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