2014-02-06 114 views
1

我必須登錄到多個服務器並上傳一些文件。有沒有機會使用AutoIt編碼?AutoIt或批量FTP傳輸到多個服務器上

我已經用批處理文件測試,但不工作:

echo open < /FTP/ftphost.txt 
echo < /FTP/ftpuser.txt  
echo < /FTP/ftppass.txt  
echo cd C:\Dokumente und Einstellungen\Administrator\Desktop\FTP\dateien>>ftp.txt  
echo cd httpdocs>>ftp.txt  
echo mput test.txt test2.txt 
echo bye 

p 在ftphost.txt文件應該有多種不同的FTP服務器 在ftpuser.txt文件有多種不同的FTP用戶 在ftppass.txt文件中輸入一個密碼。

+0

您的腳本可以創建三個FTP腳本並連續運行它們。有沒有一個原因,爲什麼這不是一個選項? – foxidrive

+0

嗯,我需要50-100個連接。 該腳本不起作用,你知道爲什麼嗎? – cr0co

+0

Windows FTP一次只能連接一個連接。您可能能夠一次運行多個FTP腳本,但是,我還沒有嘗試過。 50-100有點偏高,因爲cmd提示將不得不爲每個FTP連接運行。 – foxidrive

回答

1

如果你使用像這樣的FTP信息的文件(每個FTP服務器具有相同的文件夾結構)

FTPlist.txt

ftp.host1.com|username1|password1 
ftp.host2.com|username2|password2 
ftp.host3.com|username3|password3 
ftp.host4.com|username4|password4 

那麼這個批處理文件可以上傳一組文件的每一個FTP服務器:

@echo off 
for /f "usebackq tokens=1,2,3 delims=|" %%a in ("FTPlist.txt") do (
(
echo.open %%a 
echo.%%b 
echo.%%c 
echo.binary 
echo.lcd "C:\Dokumente und Einstellungen\Administrator\Desktop\FTP\dateien" 
echo.cd httpdocs 
echo.mput test.txt test2.txt 
echo.bye 
) >ftp.script 
ftp -i -s:ftp.script >> ftp.log 
) 
del ftp.script 
+0

感謝您的腳本,但它不工作:( 有沒有機會得到一個日誌文件,看到錯誤? – cr0co

+0

我添加了一個FTP.log創建 – foxidrive

+0

我已刪除該行,但我可以看到窗口1/2秒,然後它關閉。 – cr0co