【问题标题】:Batch file to upload all files in directory to FTP将目录中的所有文件上传到 FTP 的批处理文件
【发布时间】:2017-01-22 22:50:39
【问题描述】:

我正在尝试制作一个 bat 脚本来将文件夹中的所有文件上传到 FTP 服务器。

我按照以下指南成功上传了一个文件,但不知道如何上传文件夹中的所有内容。

How to Automate FTP Uploads from the Windows Command Line

根据我的阅读,我认为我需要以某种方式使用 mput 命令?

目前我的 upload.bat 文件如下所示:

myftp.bat .\logs\test.txt

myftp.bat 里面是:

@echo off
echo user MyUserName> ftpcmd.dat
echo MyPassword>> ftpcmd.dat
echo bin>> ftpcmd.dat
echo put %1>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat MyFTPServer
del ftpcmd.dat
pause

【问题讨论】:

  • myftp.bat 中有什么?
  • 更新为包含 myftp.bat
  • 您是要上传 .\logs\ 中的所有内容还是 .\logs\test.txt 中列出的所有内容? (但是是的,您将使用mput。)
  • 日志文件夹中的所有文本文件
  • MultipleFileUpload.bat获得灵感

标签: batch-file ftp


【解决方案1】:

您需要使用mput command 喜欢:

cd logs
prompt
mput *

如果没有prompt command,您将被要求确认每次转移。


除了prompt 命令,您还可以使用-i 开关:

ftp -i -n -s:ftpcmd.dat MyFTPServer

【讨论】:

  • 他也可以使用ftp -n -i -s:ftpcmd.dat MyFTPServer
【解决方案2】:

您还可以创建一个批处理文件来运行多个其他隐藏的批处理文件,以便您可以使用单独的批处理文件传输每个文件。如果您想要此代码,请询问,但看起来最好的解决方案已经说过了^^。

【讨论】: