Bash 如何使用curl--ftp创建目录?

Bash 如何使用curl--ftp创建目录?,bash,curl,centos,curl-commandline,Bash,Curl,Centos,Curl Commandline,背景 我一直在网上搜索,试图找到——ftp create dirs的一个例子 总的来说,我的目标是使用“-ftp create dirs”来自动创建必要的文件夹,如果我上传文件时这些文件夹不存在的话 问题 问题是我不知道正确使用--ftp create dirs的确切语法,有人能帮我吗 我当前的卷发: curl -k -T 000-0000-0000-000.png -u [username]:[pass] --ftp-create-dirs /test --ftp-ssl ftp:[ftp

背景

我一直在网上搜索,试图找到
——ftp create dirs
的一个例子

总的来说,我的目标是使用“-ftp create dirs”来自动创建必要的文件夹,如果我上传文件时这些文件夹不存在的话

问题

问题是我不知道正确使用
--ftp create dirs
的确切语法,有人能帮我吗

我当前的卷发:

curl -k -T 000-0000-0000-000.png -u [username]:[pass] --ftp-create-dirs /test --ftp-ssl  ftp:[ftp server]

在上面的示例中,我尝试上载.png图像,并在ftp服务器上创建
/test
,如果它不存在。

您不需要在
--ftp创建目录之后使用
/test
。它只是一个类似于命令中的
-k
(不带任何值)的参数。

要通过FTP添加新目录:

curl ftp://username:password@10.10.10.10/homes/back/newdir/ --ftp-create-dirs

只是把它放在这里作为将来的参考(因为我一直在犯我刚才在代码中看到的同样的错误):用
/
(斜杠)结尾文件夹名很重要。否则,curl将创建一个文件,而不是文件夹。以下是我使用的命令:

curl -T path/to/local_file.txt ftp://1.2.3.4/my_new_folder/ --ftp-create-dirs -u username:password
这将把
local_file.txt
移动到FTP服务器上的
my_new_文件夹
。如果文件夹不存在,将创建该文件夹,否则,该命令将被忽略

如果创建文件夹时出现任何问题,curl将返回错误号9(请参阅)。如果给定目录中已存在与新文件夹同名的文件,则可能发生这种情况:

curl: (9) Failed to MKD dir: 451