linux刪除N天前建立的檔案

2021-07-10 15:59:31 字數 1335 閱讀 7101

語句寫法:

find 對應目錄 -mtime +天數 -name "檔名" -exec rm -rf {} \;

例1:find /usr/local/backups -mtime +10 -name "*.*" -exec rm -rf {} \;

將/usr/local/backups目錄下所有10天前帶"."的檔案刪除

find:linux的查詢命令,使用者查詢指定條件的檔案

/usr/local/backups:想要進行清理的任意目錄

-mtime:標準語句寫法

+10:查詢10天前的檔案,這裡用數字代表天數,+30表示查詢30天前的檔案

"*.*":希望查詢的資料型別,"*.jpg"表示查詢擴充套件名為jpg的所有檔案,"*"表示查詢所有檔案,這個可以靈活運用,舉一反三

-exec:固定寫法

rm -rf:強制刪除檔案,包括目錄

{} \; :固定寫法,一對大括號+空格+\+;

若嫌每次手動執行語句太麻煩,可以將這小語句寫到乙個可執行檔案中,再設定cron排程執行,那就可以讓系統自動去清理相關檔案。

例2:1.#touch /usr/local/bin/clear

#chmod 777 clear

新建乙個可執行檔案clear

2.vi clear

編輯clear檔案如下:

#!/bin/sh

find /usr/local/backups -mtime +10 -name "*.*" -exec rm -rf {} \;

ok,儲存退出

3.#crontab -e

將clear檔案加入到系統計畫任務,到點自動執行

輸入:* 2 * * */usr/local/bin/clear

這裡的設定是每天凌晨2點執行clear檔案進行資料清理,可以研究一下cron,制定自己需要的計畫任務

示例:#!/bin/sh

find /usr/local/jboss-4.2.3.ga/server/default/log -mtime +6 -name"server.log.*" -exec rm -rf {} \;

exit

[root@web3 ~]# crontab -l

* 2 * * * sh /root/autodellog.sh

這樣每天晚上2點執行這個指令碼,指令碼是刪除6天前的檔案

find /etc/rc.d -name '*crond' -exec file {} \;

查詢/etc/rc.d目錄下面所有以crond結束的檔案,並使用file指令檢視其屬性,注意:exec和file間是乙個空格,file和{}間是乙個空格,{}和\;之間是乙個空格,\;是乙個整體。

Linux 自動刪除N天前的檔案

linux是乙個很能自動產生檔案的系統,日誌 郵件 備份等。所以自從刪除就顯的很方便。語句寫法 find 對應目錄 mtime 天數 name 檔名 exec rm rf 例1 find u01 backups mtime 10 name exec rm rf 將 u01 backups目錄下所有1...

Linux 自動刪除N天前的檔案

linux 是乙個很能自動產生檔案的系統,日誌 郵件 備份等。所以自從刪除就顯的很方便。語句寫法 find 對應目錄 mtime 天數 name 檔名 exec rm rf 例1 find u01 backups mtime 10 name exec rm rf 將 u01 backups 目錄下所...

Linux自動刪除N天前的檔案

轉 linux 自動刪除n天前的檔案是乙個很能自動產生檔案的系統,日誌 郵件 備份等。所以自從刪除就顯的很方便。語句寫法 find 對應目錄 mtime 天數 name 檔名 exec rm rf 例1 find u01 backups mtime 10 name exec rm rf 將 u01 ...