如何使用 bash 脚本循环遍历 FTP 目录中的每个文件

如何使用 bash 脚本循环遍历 FTP 目录中的每个文件

可能的重复:
如何使用 CURL 通过 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

任何指示都会有所帮助

答案1

要么重写你的脚本:珀尔、PHP 或 Python,因为它们都提供用于 FTP 的 API,否则请查看使用预计。周围有几个教程。

答案2

文件传输协议协议的命令集非常有限。您不能通过 ftp 连接使用 shell 脚本。如果您想这样做,请使用 telnet 或 ssh。

相关内容