0

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

@ftp -i -s:"%~f0"&GOTO:EOF
open myserver
myid
mypw
hash
bin

lcd D:\Users\Desktop\test   
#cd smsbackup/ 
cd backup/ #my main folder location
mget *

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

@ftp -i -s:"%~f0"&GOTO:EOF
open myserver
myid
mypw
hash
bin

lcd D:\Users\Desktop\test   
#cd smsbackup/ 
cd FolderA/ #my main folder location
mget *

...并用 FolderB 和 FolderC 替换另一个脚本。

可以在单个批处理文件中下载多个文件夹吗?预先感谢。

4

1 回答 1

1

您可以先下载文件夹列表,然后在单独的 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
)  
于 2013-07-15T10:44:08.710 回答