2014-09-11 204 views
1

我製作了一個簡單的FTP上傳腳本,應該將多個文件從Windows 2008 Server上載到FTP位置。我已經通過手動直接在CMD中執行腳本的每個命令來嘗試這種方式,並且它工作正常。但是,當我運行script.bat它說,沒有任何命令被識別爲內部或外部命令。我檢查了ENV變量,並且有一個System32的路徑,所以它應該沒問題。任何人都可以請幫忙。謝謝批處理腳本中的FTP命令無法正常工作

open xx.xxx.xx.xx 
user 
pass 
prompt 
bin 
lcd X:\test\test\ 
cd /tempTest/tempTest 
binary 
mput "*.*" 
disconnect 
quit 
+0

您的代碼看起來並不像shell腳本,但FTP腳本。創建一個包含你的代碼的文本文件,我假設它的文件名是「ftp.txt」。然後嘗試在CMD中執行命令「ftp -s:ftp.txt」。 – 2014-09-11 08:25:55

+0

我假設你使用了'ftp -s:yourscript'就像這樣http://support.microsoft.com/kb/96269 – 2014-09-11 08:26:27

+0

謝謝,當我從CMD運行腳本時,它工作,可以這樣做,因此我可以運行從Windows腳本。謝謝 – user2842773 2014-09-11 08:46:43

回答

1

將您在桌面上的一個文本文件,腳本調用ftpscript.txt

創建一個名爲getftp.bat一個批處理文件,裏面有這樣的 - 那麼你可以點擊bat文件。

@echo off 
ftp -i -s:"%userprofile%\desktop\ftpscript.txt" 
pause 
2

您也可以嘗試類似的東西與多文件上傳的批處理文件:

MultipleFileUpload.bat

@echo off 
Title Multiple file Upload by Hackoo 
mode con cols=85 lines=22 & Color A 
::*********************************** 
Set FTPSERVER=ftp.xx.xxx.xx.xx.com 
Set USER=UserName 
Set Password=YourPassword 
Set LocalFolder=X:\test\test 
Set RemoteFolder=/tempTest/tempTest/ 
::*********************************** 
> ft.do echo Open %FTPSERVER% 
>> ft.do echo %USER% 
>> ft.do echo %Password% 
>> ft.do echo prompt n 
>> ft.do echo bin 
>> ft.do echo lcd %LocalFolder% 
>> ft.do echo cd %RemoteFolder% 
>> ft.do echo mput *.* 
>> ft.do echo bye 
ftp -s:ft.do 
del ft.do 
Pause 
+0

非常感謝,能否幫我刪除本地文件?謝謝 – user2842773 2014-09-12 08:29:40

相關問題