Bash
如何使用 bash 腳本遍歷 FTP 目錄中的每個文件
可能重複:
我需要使用 bash 腳本連接到遠端伺服器,然後刪除目錄中超過 7 天的所有文件。我正在嘗試使用 FTP 遠端伺服器中的 for 循環來執行此操作,但出現錯誤。
#!/bin/sh HOST='www.ftpserver.com' USER='username' PASSWD='password' ftp -n $HOST <<END_SCRIPT user ${USER} ${PASSWD} for i in {ls} do echo "$i" done quit END_SCRIPT exit 0
我得到的錯誤是
We only support non-print format, sorry. ?Invalid command ?Invalid command
任何指針都會有所幫助
要麼重寫你的腳本:Perl、PHP 或 Python,因為它們都提供 FTP 的 API,否則看看使用expect。周圍有幾個教程。
FTP協議的命令集非常有限。您不能將 shell 腳本與 ftp 連接一起使用。如果您想這樣做,請使用 telnet 或 ssh。