Ftp ksh脚本将7个文件保存在一个目录中,并在每次收到第8个文件时移动最旧的文件

Ftp ksh脚本将7个文件保存在一个目录中,并在每次收到第8个文件时移动最旧的文件,ftp,ksh,aix,Ftp,Ksh,Aix,需要帮助以ksh编写脚本,该脚本基本上位于一个目录中,每天传输一个文件,但在该目录中,最多不超过7个文件,每周传输一个csv格式的文件。所以脚本应该只保留7个文件,当它收到第8个文件时,它应该将最旧的.csv文件移动到另一台服务器,我知道如何编写ftp脚本,但不知道如何编写此类脚本,并将此类脚本放入cron作业中,以便在第8天运行。例如,每周一凌晨1点。谢谢,希望能帮上忙。我输入了这个,但不确定它是否能工作 find /successfactors/interfaces/OUT -mtime +

需要帮助以ksh编写脚本,该脚本基本上位于一个目录中,每天传输一个文件,但在该目录中,最多不超过7个文件,每周传输一个csv格式的文件。所以脚本应该只保留7个文件,当它收到第8个文件时,它应该将最旧的.csv文件移动到另一台服务器,我知道如何编写ftp脚本,但不知道如何编写此类脚本,并将此类脚本放入cron作业中,以便在第8天运行。例如,每周一凌晨1点。谢谢,希望能帮上忙。我输入了这个,但不确定它是否能工作

find /successfactors/interfaces/OUT -mtime +8 -type f -exec mv "{}" /successfactors/interfaces/out-resp \;

假设文件名没有安全漏洞,您可以控制文件名或特殊文件名,如非ascii字符或控制字符

ls -1t \
 | sed -n '1,7 !p' \
 | while read FileName
    do
      # ftp your file "${FileName}" 

      rm "${FileName}"
    done

但是,如果您每天只收到一个文件,则ftp传入文件可能比只发送旧文件更安全,这看起来还可以。当你需要计算你的文件时,你将需要类似[。当你的文件没有空格或换行符时,你可以忽略一般建议,以避免解析ls-t。谢谢walter让我检查一下链接,是的,事实上,他们可能每天上传一个以上的文件。你能解释一下你为什么要创建这个关于成功因素的链接吗?