cron 是 linux 的內建服務
檢視服務狀態
[vagrant@vagrant-c5-x86_64 ~]$ /sbin/service crond status
crond (pid 2168) 正在執行...
關閉服務[vagrant@vagrant-c5-x86_64 ~]$ sudo /sbin/service crond stop
停止 crond: [確定]
啟動服務[vagrant@vagrant-c5-x86_64 ~]$ sudo /sbin/service crond start
啟動 crond: [確定]
重啟服務[vagrant@vagrant-c5-x86_64 ~]$ sudo /sbin/service crond restart
停止 crond: [確定]
啟動 crond: [確定]
重新載入配置[vagrant@vagrant-c5-x86_64 ~]$ sudo /sbin/service crond reload
重新載入 cron 守護程序配置: [確定]
新增為系統自啟動/sbin/service crond start
使用設定
編輯某個使用者的 cron 服務
[vagrant@vagrant-c5-x86_64 ~]$ crontab -e
0 */1 * * * /usr/local/php/bin/php yingyongbao_push.php -t push_strategy
查詢某個使用者 cron 服務詳細內容[vagrant@vagrant-c5-x86_64 ~]$ crontab -l
0 */1 * * * /usr/local/php/bin/php yingyongbao_push.php -t push_strategy
設定某個使用者的 cron 服務 [一般root使用者在執行這個命令的時候需要此引數][vagrant@vagrant-c5-x86_64 ~]$ sudo crontab -u root -l
no crontab for root
[vagrant@vagrant-c5-x86_64 ~]$ sudo crontab -u vagrant -r
刪除某個使用者的 cron 服務[vagrant@vagrant-c5-x86_64 ~]$ crontab -e
no crontab for vagrant - using an empty one
crontab: installing new crontab
[vagrant@vagrant-c5-x86_64 ~]$ crontab -l
0 */1 * * * /usr/local/php/bin/php yingyongbao_push.php -t push_strategy
[vagrant@vagrant-c5-x86_64 ~]$ crontab -r
[vagrant@vagrant-c5-x86_64 ~]$ crontab -l
no crontab for vagrant
語法usage: crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
(default operation is replace, per 1003.2)
-e (edit user's crontab)
-l (list user's crontab)
-r (delete user's crontab)
-i (prompt before deleting user's crontab)
-s (selinux context)
幫助[vagrant@vagrant-c5-x86_64 ~]$ man crontab
基本格式第1列 表示分鐘 1~59 每分鐘用 * 或者 */1 表示
第2列 表示小時 1~23(0表示0點)
第3列 表示日期 1~31
第4列 表示月份 1~12
第5列 標識號星期 0~6(0表示星期天)
第6列 要執行的命令
#每晚的21:30
30 21 * * * ***x
#每天早上6點10分
10 6 * * * date
#每兩個小時
0 */2 * * * date
#每月 1、10、22日早上4點45分
45 4 1,10,22 * * ***
#每週日,周二,週三的 17:00和 17:10 執行
0,10 17 * * 0,2,3
#每隔10分 執行
0,10,20,30,40,50 * * * *
*/10 * * * *
#8:02,11:02,14:02,17:02,20:02 執行
2 8-20/3 * * *
/etc/crontab 檔案
存放系統執行的排程程式
[vagrant@vagrant-c5-x86_64 etc]$ cat /etc/crontab
shell=/bin/bash
path=/sbin:/bin:/usr/sbin:/usr/bin
mailto=root
home=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
/etc/cron.deny && /etc/cron.allow/etc/cron.deny 表示不能使用 crontab 命令的使用者
/etc/cron.allow 表示能使用crontab的使用者
如果兩個檔案同時存在,那麼 /etc/cron.allow 優先
如果兩個檔案都不存在,那麼只有超級使用者可以安排作業
每個使用者會在 /var/spool/cron 目錄下 產生乙個自己的 crontab 檔案[root@vagrant-c5-x86_64 vagrant]# cd /var/spool/cron/
[root@vagrant-c5-x86_64 cron]# ls
vagrant
[root@vagrant-c5-x86_64 cron]# cat vagrant
0 */1 * * * /usr/local/php/bin/php yingyongbao_push.php -t push_strategy
crontab 配置 日誌使用記錄
公司伺服器的系統為centos 6.4,經常需要使用crontab命令去執行一系列的應用指令碼,也經常遇到種種的問題,現將自己在使用crontab命令過程中遇到的一些問題彙總如下,以備後用。格式說明 對於crontab命令的格式,借用網路上一張超牛的來說明吧 檢視日誌的方法 當crontab命令未如...
crontab 任務日誌
crontab是linux下最常用的計畫任務服務。本文跟大家分享一下有關linux crontab日誌存放的一些心得,希望本文能教會你更多東西。預設情況下,crontab中執行的日誌寫在 var log下,如 ls var log cron var log cron var log cron.1 v...
crontab的日誌分析
有朋友問到關於linux的crontab不知道是否到底執行了沒有,也算寫過一些基本備份的shell指令碼,結合自己的實際生產環境簡單講述下如何通過cron執行的日誌來分析crontab是否正確執行。例如伺服器下oracle使用者有如下的計畫任務 oracle localhost6 crontab l...