Centos6
centos中使用find查找子目錄下的文件
我目前的 cronjob 是
* 10 * * * /bin/find /var/spool/record/ -type f -exec /bin/rm {} +
它每天上午 10 點刪除所有文件。
我正在嘗試刪除目前目錄下小於 90KB 類型的特定文件。為了那個原因
* 10 * * * /bin/find /var/spool/record/ -type f -iname "*.gsm" -size -90K -exec /bin/rm {} +
我擔心的是,上述語法也會從子目錄中刪除 GSM 文件,這些文件將在 /var/spool/record/ 每天創建並保留該特定日期的記錄。像 /var/spool/record/date1, /var/spool/record/date2 。
我還想在每個月的 10 日上午 10 點刪除 /var/spool/record/ 及其子目錄下超過 60 天的 GSM 文件
* 10 10 * * /bin/find /var/spool/record/ -type f -iname "*.gsm" -mtime +60 -exec /bin/rm {} +
超過 60 天的 del 子目錄和文件的正確語法是什麼。
您編寫的 cron 將在 10:00 到 10:59 之間每分鐘執行一次。使用以下方法解決此問題:
00 10 10 * * /bin/find /var/spool/record/ -type f -name “*.gsm” -mtime +60 -exec /bin/rm {} ;
這將從 /var/spool/record 及其子目錄中刪除 .gsm 文件,這些文件在每月上午 10 點和每月 10 日超過 60 天。