最近世界杯來(lái)了,一直忙于工作和世界杯之間,都沒(méi)有空來(lái)管管我的blog了,今天只能整個(gè)簡(jiǎn)單的小shell給大家了.公司要求刪除一個(gè)月之前的備份文件,免得把硬盤給整爆了,上服務(wù)器看了下,居然都有3個(gè)月的備份沒(méi)有清理了,還好是sql備份,不然硬盤空間早就滿了.
下面是我的解決辦法:
復(fù)制代碼 代碼如下:
cat delbak.sh
#!/bin/sh
location="/root/sqlbak/"
find $location -mtime +30 -type f |xargs rm -f
ps:
location 是設(shè)置查找的目錄
--mtime +30 是設(shè)置時(shí)間為30天前
-type f 這周查找的類型為文件
然后加入crontab定時(shí)來(lái)刪除:
復(fù)制代碼 代碼如下:
crontab -l
10 4 1 * * /bin/sh /root/soft_shell/delbak.sh
設(shè)定為每個(gè)月1號(hào)晚上4點(diǎn)10分執(zhí)行腳本.當(dāng)然你也可以根據(jù)你自己的需求去整.
相同的刪除方法:
復(fù)制代碼 代碼如下:
find /root/sqlbak -mtime +30 -type f -name *.gz -exec rm -f {} \;
您可能感興趣的文章:- php定時(shí)刪除文件夾下文件(清理緩存文件)
- 使用mysql事件調(diào)度器定時(shí)刪除binlog
- 使用vbs腳本定時(shí)刪除N天前的文件
- vbs 定時(shí)刪除功能實(shí)現(xiàn)代碼
- Windows和Linux下定時(shí)刪除某天前的文件的腳本
- 定時(shí)刪除一個(gè)文件夾內(nèi)的所有子文件夾和文件的方法