有一个shell脚本连接并将文件放到ftp服务器上。 现在尝试从ftp服务器上的同一目录中删除2天的旧文件。 试图使用find命令,但得到?无效命令 find ./*.txt -mtime +2 -exec rm {} \;
......
ftp -nv <<! >> $FTP_LOG 2>> $FTP_LOG
open xxx
user userid pwd
lcd $FILES_DIR
cd /yyy
put $File1 $File1
put $File2 $File2
find ./*.txt -mtime +2 -exec rm {} \;
quit
!
......
我还能尝试什么?需要帮助。
答案 0 :(得分:0)
答案 1 :(得分:0)
FTP不会为您提供外壳程序,如此处所示: https://serverfault.com/questions/28568/using-the-find-command-on-the-ftp-server/437649
因此,您将必须使用grep
在客户端上搜索文本文件。
如果您有权访问ssh
,则find
命令将在目录层次结构中搜索文件。您传递的第一个参数应该是目录。
您可以使用-name
选项搜索模式,例如带有txt扩展名的文件:
find ./ -name "*.txt" -mtime +2 -exec rm {} \;
在手册页中:
不要忘记将模式用引号引起来,以防止其被外壳扩展。