批处理脚本FTP通过主机列表循环

时间:2012-12-11 16:33:05

标签: loops batch-file ftp dos

我有以下批处理脚本来FTP并从主机中提取文件。 (ftpscript.bat)

@echo off
@ftp -i -s:"%~f0"&GOTO:EOF

open host1
username
password
cd apples
bin
hash
get fileName.txt fileName.host1
disconnect

我有以下包含主机列表的文本文件。 (HOSTS.TXT)

     host1
     host2
     host3
     host4

如何遍历文件中的每个主机,文件的每一行,并运行此脚本中的主机变量?

这是我希望它在运行时的样子的一个例子:

@echo off
@ftp -i -s:"%~f0"&GOTO:EOF

open host1
username
password
cd apples
bin
hash
get fileName.txt fileName.host1
disconnect

open host2
username
password
cd apples
bin
hash
get fileName.txt fileName.host2
disconnect

open host3
username
password
cd apples
bin
hash
get fileName.txt fileName.host3
disconnect

open host4
username
password
cd apples
bin
hash
get fileName.txt fileName.host4
disconnect

1 个答案:

答案 0 :(得分:2)

如果您想将hosts.txt中的所有主机附加到现有的ftpscript.bat脚本中,那么这应该可行

for /f %%a in (hosts.txt) do (
echo open %%a
echo username
echo password
echo cd apples
echo bin
echo hash
echo get fileName.txt fileName.%%a
echo disconnect
echo.
) >>ftpscript.bat