Linux定時任務(使用crontab)的實現

藉助linux下自帶的crontab即可實現定時任務。

crontab [-u username] [-l|-e|-r]

參數:

-u: 只有root才能進行這個任務,也即幫其他用戶新建/刪除crontab工作調度;

-e: 編輯crontab 的工作內容;

-l: 查閱crontab的工作內容;

-r: 刪除所有的crontab的工作內容,若僅要刪除一項,請用-e去編輯。


crontab -e

#此時會進入vi的編輯界面讓你編輯工作。注意到,每項工作都是一行。

 0    12   *   *   *   bash xx.sh //你要執行的shell腳本或其它linux命令
#分   時   日   月  周  |《==============命令行=======================》
代表意義 分鐘 小時 日期 月份 命令
數字範圍 0~59 0~23 1~31 1~12 0~7 就是命令啊

當週的數字爲0或7時,都代表“星期天”的意思。另外,還有一些輔助的字符,大概有下面這些:

特殊字符 代表意義
*(星號) 代表任何時刻都接受的意思。舉例來說,日、月、周都是*,就代表着不論何月、何日的禮拜幾的12:00都執行後續命令的意思。
,(逗號) 代表分隔時段的意思。舉例來說,如果要執行的工作是3:00與6:00時,就會是:0 3,6 * * * command時間還是有五列,不過第二列是 3,6 ,代表3與6都適用
-(減號) 代表一段時間範圍內,舉例來說,8點到12點之間的每小時的20分都進行一項工作:20 8-12 * * * command仔細看到第二列變成8-12.代表 8,9,10,11,12 都適用的意思/n(斜線) 那個n代表數字,即是每隔n單位間隔的意思,例如每五分鐘進行一次,則:/5 * * * * command用與/5來搭配,也可以寫成0-59/5,意思相同
  1. 爲當前用戶創建cron服務

    鍵入 crontab -e 編輯crontab服務文件

    例如 文件內容如下:

    */1 * * * * bash /root/s.sh >>/root/log
    

    然後保存文件並並退出。
    會提示:crontab: installing new crontab ,表示創建成功。
    讓輸入 crontab -l即可顯示創建了的定時任務。
    pic

  2. 啓動crontab服務

    一般默認都是啓動的,要是沒有啓動,就使用下面的方法。

    一般啓動服務用 /sbin/service crond start 若是根用戶的cron服務可以用 sudo service crond start, 這裏還是要注意 下 不同版本linux系統啓動的服務的命令也不同 ,像我的虛擬機裏只需用 sudo service cron restart 即可,若是在根用下直接鍵入service cron start就能啓動服務。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章