2015-09-28 36 views
-1

我必須每月備份和刪除舊的日誌文件。我將刪除6個月以前的文件,並將超過2個月的文件備份爲zip文件。 我想寫一個腳本,每個月都會自動執行,而不是每次手動執行。 我有UNIX命令如何做到這一點,但我需要把它放入腳本文件,它將在指定的日期自動運行。我必須寫一個自動化腳本

回答

1

您可以每天安排了一個cronjob,這內部運行腳本命令如

find foldername -mtime +120 -name "*.log" -exec gzip {} \; 

以上將歸檔的所有文件年長超過120天的照顧。部分名稱後面的引號可以根據您的要求修改,+120也可以修改。

find foldername -mtime +180 -name "*" -exec rm {} \; 

上面將刪除大於180天的文件夾名稱內的所有文件。

對於自動化部分,您可以查看下面答案中提供的維基鏈接。儘管我也將它包含在我的回答中。

您可以使用crontab安排命令(https://en.wikipedia.org/wiki/Cron

+0

謝謝,它幫助。 – James

+0

如果事情有幫助,我們可以通過在stackoverflow上進行投票答案來表達它:) – Invictus

1

可以使用crontab來調度命令(https://en.wikipedia.org/wiki/Cron

您可以添加條目打字crontab -e命令,並使用它來安排工作,將您的UNIX命令腳本之後。

例如,如果你有一個/home/test/test.sh文件,你可以每天通過添加下面你的crontab運行:

0 0 * * * /home/test/test.sh 
+0

謝謝您的信息。 – James