首页 > 解决方案 > 使用 cURL 将目录中的所有文件复制到 FTP

问题描述

我尝试使用 curl 使用以下命令将目录中的所有文件复制到 FTP:

find Users/a/Desktop/Test/ -type f -exec curl -u ftpuser:ftppass --ftp-create-dirs -T {} ftp://ftps.pmc.com/Test/{} \;

并不断收到以下错误:

FIND:参数格式不正确

或者,我试试这个命令:

find Users/a/Desktop/Test/ -name '*' -type f -exec curl -u ftpuser:ftppass -T {} ftp://ftps.pmc.com/Test/ \;

并得到这个错误:

文件未找到 - '*'

请分享您关于如何正确使用命令语法的建议,或关于如何完成使用 curl 复制目录中所有文件的需要的其他建议。

谢谢

标签: curlftp

解决方案


由于您使用的是 Windows 操作系统,因此您无法使用此处提到的 Find 和 curl 命令将文件上传到 FTP。要使用 windows 命令提示符将文件上传到 FTP 服务器,您可以按照以下步骤操作:

  • 打开命令提示符。
  • 键入命令->ftp ftps.pmc.com
  • 您现在将连接到 ftp。它会说已连接到 ftps.pmc.com。
  • 您将被要求输入用户名和密码。请正确输入。
  • 首先输入用户名,一旦该用户名可用,您将被要求输入密码。
  • 键入时密码不会在屏幕上显示任何内容,您需要确保在键入密码时不要按退格键或任何其他键,因为它会直接从键盘输入中读取密码。
  • 成功连接到它后,您需要使用 cd 命令移动到 ftp 服务器上所需的目录。例如,cd 测试
  • 然后,要从本地计算机复制文件,您需要输入命令 ->lcd Users/a/Desktop/Test/
  • 然后 put 命令将用于将您的文件上传到 ftp 服务器。put *.txt 会将所有文本文件上传到 ftp 上的当前文件夹。mput 会将Users/a/Desktop/Test/本地文件夹中的所有文件一一上传到 ftp 上的当前文件夹。
  • mput 命令也可用于上传整个文件夹。
  • 请注意,此处在命令提示符中使用的命令和文件名将区分大小写。

所以命令列表将是

 1. ftp ftps.pmc.com 
 2. ftpuser
 3. ftppass
 4. cd test
 5. lcd Users/a/Desktop/Test/
 6. put *.txt (OR mput)

推荐阅读