使用crontab命令要求root身份
1. crontab -1 [username]
列出用戶現有任務的列表
RH Linux 爲
crontab -u username -l
列出指定用戶現有任務的列表
2. crontab -d [username]
刪除用戶目前的任務
3. crontab-c dir-
指定crontab的目錄
4. 若是想添加一個任務或想編輯任務 使用
crontab -e 命令,進入一個VI的編輯界面,既能夠添加或修改任務了
時間說明
* * * * * command
分 時 日 月 周 命令
第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
時間部分
* 逗號(',') 指定列表值。如: "1,3,4,7,8"
* 中橫線('-') 指定範圍值 如 "1-6", 表明 "1,2,3,4,5,6"
* 星號 ('*') 表明全部可能的值
第6列要運行的命令: 文件路徑 參數
例子 :
30 21 * * * /etc/ restart
常見陷阱
每一個SA、DBA 或者是普通的 Unix 用戶,在第一次使用 Crontab 的時候都會遇到問題. 運行 Crontab 的常見錯誤包括以下幾種:
1) 出於測試目的新建立了一條 Cron JOB, 時間間隔必須超過兩分鐘,不然 JOB 將調度不到。若是必須忽略這兩分鐘的載入配置時間差,能夠經過從新啓動 Cron Daemon 作到。
2) 從 Crontab 中啓動 X Window 程序須要注意的事項:因此要麼在程序前初始化 "DISPLAY=:0.0", 要麼在應用程序後面追加參數 --display :0.0
3) 命令中的 % 必須作轉義處理: % .我我的的意見是不要在命令行裏帶這個參數,乾脆寫到腳本里,而後調度該腳本便可。
其實我卻是認爲使用 Crontab 最多見的一個問題每每是由於環境變量不對。常常會看到論壇裏有人問:爲何個人 Crontab 建立了不執行 準備建立一條 Cron JOB 的時候,不少人都喜歡在命令行下運行一遍,由於這個時候環境變量是隨着 Shell 自動帶進來,在 Crontab 中則可能由於找不到正確的環境變量,JOB 就不能執行。這個小問題就像出天花,一次教訓以後就都記得了。測試
示例以下:spa
用root登錄:命令行
1、rest
/etc 目錄下新建autoboot腳本,內容爲:crontab
/bin/su - root -c "sync;sync;init 6"it
設置autoboot屬性以下爲:變量
-rwxrwxrwx 1 root sys 37 Mar 5 2007 autoboot配置
2、定時任務
執行crontab -u root -e進入vi編輯模式,程序
插入:
0 3 * * * /etc/autoboot
保存推出便可(0 3* * * 表示天天3:00從新啓動).