FTP批处理文件下载多个文件夹



如何通过ftp连接将多个文件夹从一台服务器下载到另一台服务器。我的主文件夹名为"备份",有子文件夹名为文件夹A、文件夹B和文件夹C。我的批处理文件如下。

@ftp -i -s:"%~f0"&GOTO:EOF
open myserver
myid
mypw
hash
bin
lcd D:UsersDesktoptest   
#cd smsbackup/ 
cd backup/ #my main folder location
mget *

当我运行上面的脚本时,它显示找不到文件。所以,我所要做的就是为每个文件夹编写脚本。当我把它写如下时,它就是工作。

@ftp -i -s:"%~f0"&GOTO:EOF
open myserver
myid
mypw
hash
bin
lcd D:UsersDesktoptest   
#cd smsbackup/ 
cd FolderA/ #my main folder location
mget *

并为其他脚本替换为FolderB和FolderC。

是否可以在一个批处理文件中下载多个文件夹?提前感谢。

您可以首先下载文件夹列表,然后在单独的ftp会话中迭代该列表。

运行第一个ftp脚本,它将下载文件夹列表

open myserver
myid
mypw
cd backup
mls * ls.txt
quit

然后使用ls.txt的内容动态构建第二个ftp脚本,类似于。。。

copy ftp.txt ftp2.txt
for /f "tokens=*" %%a in (ls.txt) do (
  echo cd %%a >>ftp2.txt
  echo mget * >>ftp2.txt
  echo cd .. >>ftp2.txt
)  

最新更新