我正在使用Windows批處理編程創建一個ftp連接到ftp主機,並自動將文件上傳到該主機。但是,ftp命令沒有參數來獲取命令中的用戶名和密碼,我必須在後續命令中輸入它。批處理文件如何等待ftp連接建立,然後回顯後續ftp命令的用戶名和密碼? 感謝您的幫助。命令輸入參數需要用戶手動輸入批處理編程
2
A
回答
1
實際上有不同的方式來做到這一點。
Windows ftp接受包含要運行的命令的「-s:filename」參數。你可以用「USER username \ nASSASS」的格式存儲用戶名和密碼,當連接建立時它們將首先運行。
確保刪除文件之後,或更好,但使用不打磁盤臨時文件;)
編輯:澄清對coolkid。這真的是你的答案(謝謝你的備份喬伊)。
爲了明確,在這裏你是。
的upload.cmd
內容:
@echo off
set /p name= Username?
set /p pass= Password?
REM Give dummy data to the human-friendly FTP prompts
REM We will pass actual FTP commands in the next stanza
echo dummy > ftp_commands.txt
echo dummy >> ftp_commands.txt
echo USER %name% >> ftp_commands.txt
echo PASS %pass% >> ftp_commands.txt
echo PUT ftp_commands.txt >> ftp_commands.txt
ftp -s:ftp_commands.txt ftp.mydomain.com
運行upload.cmd
:
C:\>upload.cmd
Username?anonymous
Password?foobar
Connected to ftp.mydomain.com.
220 2k-32-71-e Microsoft FTP Service (Version 5.0).
User (ftp.mydomain.com:(none)):
331 Password required for dummy .
530 User dummy cannot log in.
Login failed.
ftp> USER anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.
230 Anonymous user logged in.
ftp> PUT ftp_commands.txt
200 PORT command successful.
1
您可以將某些數據回顯到臨時文件,然後將該文件重定向到ftp命令的標準輸入。例如:
>file echo USERNAME
>>file echo.
>>file echo PASSWORD
>>file echo.
ftp < file
rem Now we can delete the file
del file
如果沒有需要有換行符(必要模擬當FTP程序要求憑據ENTER按鍵),那麼你可能不臨時文件管理:
echo USERNAME | ftp
相關問題
- 1. 用戶輸入 - DOS批處理文件
- 2. 用戶輸入在Windows批處理編程
- 3. Windows批處理編程中的用戶輸入操作
- 4. 批處理 - 從用戶輸入中獲取多個參數
- 5. 命令行輸入(參數)
- 6. 需要輸入輸入數組,直到用戶輸入0 JAVA
- 7. 批量輸入COLOR命令
- 8. 需要用戶輸入口令代碼
- 9. 我可以要求用戶重新輸入命令行參數
- 10. 將輸入作爲Python中的命令行參數處理輸入
- 11. 使用批處理命令發送鍵盤輸入
- 12. 批處理腳本根據輸入改變參數多次運行命令
- 13. 在dos批處理腳本中運行輸入參數作爲命令?
- 14. 需要用戶輸入
- 15. 使用用戶輸入發送命令到另一個批處理
- 16. 需要pandoc批處理命令
- 17. 輸入進程(批處理文件)
- 18. 檢查dos批處理文件中的輸入命令?
- 19. 批處理文件:解析命令行輸入
- 20. 批處理文件提示輸入兩個可能的命令
- 21. 如何將輸入傳遞給批處理命令
- 22. 批處理命令只取第一線與輸入
- 23. 使用命令行輸入參數
- 24. 批處理命令「set/p」不會將用戶輸入存儲到變量中
- 25. 用戶輸入處理
- 26. 處理用戶的輸入?
- 27. 用戶輸入處理postgresql
- 28. 處理用戶輸入
- 29. 處理用戶輸入(Mathmatical)
- 30. 執行需要用戶輸入的終端命令
感謝您的解決方案。但根據真實的解決方案,此文本文件的前兩行不包含兩個ftp命令「用戶」和「密碼」,但它只能包含 \ n –
coolkid
2011-03-25 11:24:50