歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux中的定時任務調度—crontab命令

Linux中的定時任務調度—crontab命令

日期:2017/2/28 15:44:36   编辑:Linux教程

在linux系統中,有些工作需要周而復始的工作,有些任務需要在某個特定的時間啟動工作,這就可以通過crontab這個命令來進行設置,這個文件在/etc/crontab。具體步驟為:

(1)設置任務

執行命令:crontab –e (或者vi /etc/crontab)

(2)在出現的命令行中編輯

例如設置每每個一段時間去執行 data >> /home/chen/mydata 這個命令

data命令時顯示當前時間,上面則個命令表示將當前時間以追加的方式寫入到文件/home/chen/mydata這個文件中。

在上面的編輯器中輸入:

* * * * * data >>/home/chen/mydata

然後保存退出,系統便會在每分鐘執行一次 data >> /home/chen/mydata 這個命令

定時的時間規則是:

時間 含義 范圍

第1個數字:分鐘 每小時中的第幾分鐘執行 0-59

第2個數字:小時 每天的第幾個小時執行 0-23

第3個數字:日期 每月的第幾天執行 0-31

第4個數字:月份 每年的第幾個月執行 0-12

第5個數字:星期 每周的第幾天執行 0-6

其他:要執行的命令

例如,如果想在每天的2點執行上述命令,其格式為:

0 2 * * * data >> /home/chen/mydata

(3)設置調度多個任務

在設置調度多個任務時,不推薦使用上述方法,因為將所有的命令都寫到/etc/crontab中會讓人感覺很混亂,可以通過先將命令寫成一個可執行文件,然後再通過crontab調用這個可執行文件來實現(即shell編程)。

例如在將時間寫入一個文件之後,再將該文件拷貝到其他目錄中

首先在/home/chen目錄下新建一個文件:vi test.sh

然後輸入對應的命令:

data >> /home/chen/mydata

cp /home/chen/mydata /root/

然後再:crontab –e

添加一行代碼:

0 2 * * * /home/chen /test.sh

(4)終止任務調度命令: crontab –r

(5)顯示當前任務調度命令: crontab –l

-------------------華麗的分割線--------------------

這裡需要注意的是由於使用vi新建的文件默認情況下並不具備可執行的權限,所以還需要修改一下test.sh文件的權限,執行下面的命令:

chmod 744 test.sh

這樣便為他賦予了可執行的權限

這裡可以通過命令 ls –l 查看文件具有什麼樣的權限:

ls –l

-rw-r—r— (10個字符)

第一個‘-’表示文件類型(-表示普通文件)

後面三個表示文件的所有者對該文件的權限:

r 表示可讀用4表示; w表示可寫 用2表示; x表示可執行 用1表示

7=4+2+1 就表示他擁有所有的權限

再後面三位表示所在組用戶對該文件的權限

最後三位代表其他組的用戶對該文件的權限

Copyright © Linux教程網 All Rights Reserved