Ksh

ksh 腳本中超過 8 天的 mv 文件

  • November 16, 2018

需要在 KSH 中創建腳本以將文件 mv 到同一伺服器中超過 8 天的其他目錄,它們都是 .CSV

只需在 mv cmd 中使用 -t (–target-directory) ,如下所示:

find csvdir -type f -name '*.CSV' -mtime +8 -exec mv -t 'otherdir/' {} \;

這是我在安裝 ksh 和測試之前的建議。

儘管

$$ $(ls folder/ | wc -l) -ge 8 $$;

mv “$(ls -1t 文件夾/*.csv | tail -1)” /otherdir/ ;

完畢 測試

在此處輸入圖像描述

您嘗試的命令幾乎是正確的,但+8用作-mtime參數而不是+2.

你說你正在使用 AIX,所以我猜你也在使用一些需要{}引用或轉義為\{\}. 請參閱gnu find and masking the {} for some shells - 哪個?

find /tmp/sappodb/ -type f -mtime +8 -exec mv -v `{}` /tmp/sappodb1/ \;

如果您只想將其限制為 mv-ing .csv 文件:

find /tmp/sappodb/ -type f -name '*.csv' -mtime +8 -exec mv -v `{}` /tmp/sappodb1/ \;

引用自:https://unix.stackexchange.com/questions/239063