Centos7下crontab+shell腳本定期自動(dòng)刪除文件
最近有個(gè)需求,就是rsync每次同步的數(shù)據(jù)量很多,但是需要保留的數(shù)據(jù)庫bak文件
保留7天就夠了,所以需要自動(dòng)清理文件夾內(nèi)的bak文件
解決方案:利用shell腳本來定期刪除文件夾內(nèi)的任務(wù)
1、創(chuàng)建shell文件[root@zabbix script]# vim backup_sql_clean.sh #!/bin/sh find /data1/backup/KDKDA$AGKDPAYKT/XNAKSD/FXUIJ -mtime +10 -name '*.bak' -exec rm -rf {} ;
參數(shù)說明:
/data1/backup/KDKDA$AGKDPAYKT/XNAKSD/FXUIJ #這個(gè)是文件的路徑path
-mtime +10 #這個(gè)是保留的天數(shù),10就是10天
-name '*.bak' #這個(gè)是要?jiǎng)h除文件的名稱,這邊加后綴就是刪除這個(gè)類型的文件
其他的是Linux的命令
2、設(shè)置shell文件權(quán)限[root@zabbix script]# chown 777 backup_sql_clean.sh3、設(shè)置crontab周期執(zhí)行
crontab命令用于設(shè)置周期性被執(zhí)行的指令
crontab相關(guān)命令說明:https://www.cnblogs.com/Sungeek/p/9561833.html
[root@zabbix /]# crontab -e 0 0 * * 7 /data/script/backup_sql_clean.sh4、啟動(dòng)crond進(jìn)程
crond的概念和crontab是不可分割的。crontab是一個(gè)命令,常見于Unix和類Unix的操作系統(tǒng)之中,用于設(shè)置周期性被執(zhí)行的指令。
該命令從標(biāo)準(zhǔn)輸入設(shè)備讀取指令,并將其存放于“crontab”文件中,以供之后讀取和執(zhí)行。而crond正是它的守護(hù)進(jìn)程。
[root@zabbix /]# systemctl status crond.service #查看crond狀態(tài)[root@zabbix /]# systemctl start crond.service #啟動(dòng)crond服務(wù)[root@zabbix /]# systemctl restart crond.service #重啟crond服務(wù)
相關(guān)文章:
1. Intellij IDEA 關(guān)閉和開啟自動(dòng)更新的提示?2. IntelliJ IDEA設(shè)置編碼格式的方法3. layui的checbox在Ajax局部刷新下的設(shè)置方法4. IntelliJ IDEA導(dǎo)出項(xiàng)目的方法5. Java Swing權(quán)威指南:Spinner Model Controls6. asp.net core 認(rèn)證和授權(quán)實(shí)例詳解7. Spring注入Date類型的三種方法總結(jié)8. JSP數(shù)據(jù)交互實(shí)現(xiàn)過程解析9. 使用JSP實(shí)現(xiàn)簡單的用戶登錄注冊頁面示例代碼解析10. web下載文件和跳轉(zhuǎn)的方法
