Cron 是 Linux 的內置服務php
[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
[vagrant@vagrant-c5-x86_64 ~]$ crontab -e 0 */1 * * * /usr/local/php/bin/php yingyongbao_push.php -t push_strategy
[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 ~]$ sudo crontab -u root -l no crontab for root
[vagrant@vagrant-c5-x86_64 ~]$ sudo crontab -u vagrant -r
[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列 要運行的命令
特殊符號linux
*: 表示任什麼時候刻 ,: 表示分割 -: 表示時間段,如1-5,表示1-5點 /n: 表示每一個n的單位執行一次,如 */1,表示每隔一個小時執行一次,等效於 1-23/1 -1: 包含全部合法值,在月份域上使用 -1 意味着每一個月都會觸發這個 trigger
#每晚的21:30 30 21 * * * xxxx #天天早上6點10分 10 6 * * * date #每兩個小時 0 */2 * * * date #每個月 一、十、22日早上4點45分 45 4 1,10,22 * * xxx #每週日,週二,週三的 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 * * *
存放系統運行的調度程序bash
[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 表示不能使用 crontab 命令的用戶 /etc/cron.allow 表示能使用crontab的用戶 若是兩個文件同時存在,那麼 /etc/cron.allow 優先 若是兩個文件都不存在,那麼只有超級用戶能夠安排做業
[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