基本用法:
1. crontab -l
列出當前的crontab任務
2. crontab -d
刪除當前的crontab任務
3. crontab -e (solaris5.8上面是 crontab -r)
編輯乙個crontab任務,ctrl_d結束
4. crontab filename
以filename做為crontab的任務列表檔案並載入
crontab test.cron
這樣乙個crontab 檔案就建立好了。可以轉到/var/spool/cron目錄下面檢視,發現多了乙個foxy檔案。這個檔案就是所需的crontab檔案。在crontab檔案中如何輸入需要執行的命令和時間呢?該檔案中每行都包括6個域,其中前5個域是指定命令被執行的時間,最後乙個域是要被執行的命令。每個域之間使用空格或者跳位字元分隔。格式如下:minute hour day-of-month month-of-year day-of-week commands第1項是分鐘,第2項是小時,第3項是乙個月的第幾天,第4項是一年的第幾個月,第5項是一周的星期幾,第6項是要執行的命令。這些項都不能為空,必須填入。如果使用者不需要指定其中的幾項,那麼可以使用*代替。因為*是萬用字元,可以代替任何字元,所以就可以認為是任何時間,也就是該項被忽略了。
例子:
1.周一到周五每天下午 5:00 寄一封信給 [email protected] :
0 17 * * 1-5 mail -s "hi" [email protected] /dev/null 2>&1 即可 (這個未經過實驗)
2.#crontab -e
然後寫入8 * * * * tar -zcf /home/sunbaigui/backup.tgz /home/sunbaigui/documents/osg/
再打入命令#/etc/init.d/cron restart
這樣這個任務就建好了,它會在每個時刻的第8分鐘執行打包程式
f1 f2 f3 f4 f5 program
其中 f1 是表示分鐘,f2 表示小時,f3 表示乙個月份中的第幾日,f4 表示月份,f5 表示乙個星期中的第幾天。program 表示要執行的程式。
當 f1 為 * 時表示每分鐘都要執行 program,f2 為 * 時表示每小時都要執行程式,其餘類推
當 f1 為 a-b 時表示從第 a 分鐘到第 b 分鐘這段時間內要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其餘類推
當 f1 為 */n 時表示每 n 分鐘個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其餘類推
當 f1 為 a, b, c,... 時表示第 a, b, c,... 分鐘要執行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要執行,其餘類推
0~59 表示分
1~23 表示小時
1~31 表示日
1~12 表示月份
0~6 表示星期(其中0表示星期日)
3.在2的基礎上將後面的命令寫入hello.sh
然後將上面的命令改為16 * * * * /home/sunbaigui/hello.sh
再restart cron 這樣它就會在每個時刻的第16分鐘執行打包程式
計畫任務的安排cron
1 迴圈執行的計畫任務linux下面有atd和crond兩種計畫任務,其中,atd服務使用的at命令只能執行一次,而crond服務使用的crontab定義的命令,是迴圈作用的,所以crond才符合我們的要求。crontab支援兩種狀態 一 直接編寫計畫任務 二 使用目錄的方式,放在目錄裡面的指令碼 ...
Linux學習六設定任務排程命令crontab
1.設定任務排程檔案 etc crontab 2.設定個人任務排程命令 crontab e 例如 0 2 date home mydate 表示每天2點執行這個date home mydate這個任務 3.怎麼執行多個排程任務 1 直接crontab e 中去編輯多個任務 2 將每一排程任務分別寫成...
spring task任務排程器之Cron表示式
cron表示式是乙個字串,字串以5或6個空格隔開,分為6或7個域,每乙個域代表乙個含義,cron有如下兩種語法格式 1 seconds minutes hours dayofmonth month dayofweek year 2 seconds minutes hours dayofmonth m...