shell脚本:ftp检查现有文件

时间:2018-02-28 10:17:54

标签: linux shell

我有一个简单的shell脚本,可以将每日日志文件传输到另一个Windows FTP。

问题是,如果文件已经存在,即使文件名完全相同,它仍会上传新文件。

如何快速检查此脚本?如果文件在那里,则它不会继续FTP传输

ftp -n -v $HOST << EOT
user $USER $PASSWD
prompt
bin
mput $FILE
bye
EOT

1 个答案:

答案 0 :(得分:0)

Unix ftp很容易。首先通过ftp登录系统,然后通过ls -ltr运行ftp命令并列出history.txt文件中的文件(请参阅下面的示例)并在传输文件时检查该文件是否已在历史文件中可用。如果可用,请不要传输该文件。我这样做如下: -

HISTORY_FILE="history.txt"

ftp -n -v $HOST << EOT
user $USER $PASSWD
prompt
bin
ls -rtE $HISTORY_FILE
bye
EOT

现在您可以使用以下命令检查: -

ISFILENAMEEXIST=$(cat $HISTORY_FILE | grep $FILE)

现在,如果文件存在于history.txt中,请不要发送该文件,如果不可用,请通过ftp发送。