Shell定時刪除指定時間之前的文件
最近世界杯來了,一直忙于工作和世界杯之間,都沒有空來管管我的blog了,今天只能整個簡單的小shell給大家了.公司要求刪除一個月之前的備份文件,免得把硬盤給整爆了,上服務(wù)器看了下,居然都有3個月的備份沒有清理了,還好是sql備份,不然硬盤空間早就滿了.
下面是我的解決辦法:
cat delbak.sh
#!/bin/sh
location="/root/sqlbak/"
find $location -mtime +30 -type f |xargs rm -f
ps:
location 是設(shè)置查找的目錄
--mtime +30 是設(shè)置時間為30天前
-type f 這周查找的類型為文件
然后加入crontab定時來刪除:
crontab -l
10 4 1 * * /bin/sh /root/soft_shell/delbak.sh
設(shè)定為每個月1號晚上4點10分執(zhí)行腳本.當然你也可以根據(jù)你自己的需求去整.
相同的刪除方法:
find /root/sqlbak -mtime +30 -type f -name *.gz -exec rm -f {} \;
相關(guān)文章
用Shell判斷字符串包含關(guān)系的方法小結(jié)
這篇文章主要給大家介紹了關(guān)于用Shell判斷字符串包含關(guān)系的幾種方法,其中包括利用grep查找、利用字符串運算符、利用通配符、利用case in 語句以及利用替換等方法,每個方法都給出了詳細的示例代碼與介紹,有需要的朋友們可以參考參考借鑒,下面來一起看看吧。2016-12-12linux?文件管理命令之dirname?\?find?\?finds?\?in?\?indir詳解
這篇文章主要介紹了linux文件管理命令之dirname\find\finds\in\indir詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07