简介:crontab:定时执行程序,实现脚本中的功能,crontab命令格式:crontab [-u user] [-l | -r | -e] [-i] [-s]
参数作用:
-u 指定用户
-e 编辑当前用户的crontab
-l 查看当前用户下的定时任务
-r 删除当前用户下的定时任务
注意:-u 后面是用户名如root用户,没有指定用户时默认为当前登录用户,列如:crontab -l
例如:
1:显示 crontab 当前用户下的定时任务:crontab -l
2:编辑www用户的定时任务:crontab -u www -e
3:按 i 进入编辑模式内容如下:
ps -ef|grep crond
# 使用php-cli模式每1分钟执行一次脚本,并且把返回的内容添加到ceshi.log文件
*/1 * * * * /usr/local/php/bin/php /home/wwwroot/default/crontab/crontab.php >> /home/wwwroot/default/crontab/ceshi.log
# 使用wget定时每1分钟请求一次url,并且把返回的内容添加到ceshi.log文件
*/1 * * * * wget http://baidu.com >> /home/wwwroot/default/crontab/ceshi.log
crontab总共分为5位:: * * * * * ,每一位代表的意思是:分 时 日 月 星期 命令
位置 | 含义 | 合法值 |
---|---|---|
第一位 | 分钟,第几分钟执行 | 0~59:表示第几分钟,*:表示每一分钟都要执行 |
第二位 | 小时,几点钟执行 | 0~23:表示第几个小时,*:表示每一小时 |
第三位 | 日,哪一日执行 | 01~31:表示第几日,*:表示每一天 |
第四位 | 月,即执行的月份 | 01~12:表示第几月,*:表示每个月 |
第五位 | 星期,星期几执行 | 0~6:星期几0表示星期日,*:每一天 |
第六位 | 执行的命令(一般都是编程语言) | 例如:/usr/local/php/bin/php:安装的php环境,php的全路径 |
第七位 | 待执行的脚本(一般都是自己写的脚本代码) | 例如:/home/wwwroot/default/crontab/crontab.php:要执行的脚本,可以通过 > 符号将脚本输出内容保存到某个日志文件中(这一步是可选操作) |
*/30 3-5 * * *
*/30 * * * *
0 0 * * *
0 0 * * 6
systemctl restart crond.service
# 或者使用systemctl对应的service命令
service crond restart
cat /var/log/cron
如果你看到这样类似的错误:ERROR chdir failed (/home/apache): No such file or directory
可能是你的权限问题,可以删除当前用户下的定时任务,使用root用户去创建定时任务
有遗漏或者不对的可以在我的公众号留言哦