2.用戶級:在Linux的不同用戶可依自行需求,設置週期性任務,如每天上午8:00啟動MySQL服務器並於晚上12:00關閉MySQL服務器,或者每三個小時執行一次Python程序。用戶級的最小運作週期是可達到分鐘為單位。
a. cron配置工作
crontab命令用於配置定期任務,例如 crontab -l 條列已配置的定期任務; crontab -e 編輯定期任務(即設定多久執行一次任務) ; 而管理者可用crontab -u <username> 去管理所有用戶已設置的定期任務; crontab -r 刪除已配置的定期任務。
在說明crontab -e是如何編輯定期任務之前,須先了解其定義週期的語法。可藉由vim /etc/crontab中的範例了解週期定義的語法。舉例如下:
0 2 * * * command => 每天2:00執行一次指令
0 2 10 * * command => 每月10號的2:00執行一次指令
0 2 * * 5 command => 每周五2:00執行一次指令
*/5 * * * * command => 每隔五分鐘執行一次指令
本文範例是以每兩分鐘執行一次test.sh腳本來進行,如下圖,同時當配置和執行時,可利用crontab -l來查看是否已設置好,或由 /var/spool/cron路徑中查閱是否已有任務。
b. 定義腳本
利用shell script來撰寫執行腳本,腳本內容大致為,列印出當下執行的日期資訊和6~10的數字,同時資料存成data.txt,並將該data.txt分別寄到gmail和139的郵箱,如下兩圖。
本文最後提供一個好用的腳本線上工具,可作為腳本的初步測試用,相信很多程序員都用過。
下篇文章再接續了解 mailx的用法,以及該過程可能會遇到的坑與解法。
沒有留言:
張貼留言