Linux 按時間批量刪除文件(刪除N天前文件)


需要根據時間刪除這個目錄下的文件,/home/lifeccp/dicom/studies,清理掉20天之前的無效數據。

可以使用下面一條命令去完成:

find /home/lifeccp/dicom/studies -mtime +21 -name "*.*" -exec rm -Rf {} \;

這個是根據時間刪除。

下面簡要解釋一下,這句shell命令:

find /home/lifeccp/dicom/studies -mtime +21 -name "*.*" -exec rm -Rf {} \;

  • /home/lifeccp/dicom/studies :准備要進行清理的任意目錄
  • -mtime:標准語句寫法
  • +10:查找10天前的文件,這里用數字代表天數,+30表示查找30天前的文件
  • "*.*":希望查找的數據類型,"*.jpg"表示查找擴展名為jpg的所有文件,"*"表示查找所有文件
  • -exec:固定寫法
  • rm -rf:強制刪除文件,包括目錄
  •  {} \; :固定寫法,一對大括號+空格+/+;

 

當然也可以根據文件名、根據大小,根據其他不同條件過濾刪除,或者修改等,可以考慮sort等命令結合使用。因為時間有限,這里暫不贅述,后面用到的時候,我在慢慢補充。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM