海运的博客

crontab使用及不执行解决

发布时间:April 18, 2017 // 分类: // No Comments

crontab 的基本格式是:

<分钟> <小时> <日> <月份> <星期> <命令>
分钟 从 0 到 59.
小时 从 0 到 23.
日期 从 1 到 31.
月份 从 1 到 12.
星期 从 0 到 6, 0 代表星期日.

多个时间可以用逗号隔开,例如:"1,3,4,7,8"
范围可以用连字符给出,例如:"1-6",意思等同于"1,2,3,4,5,6"
星号可以作为通配符,例如,在"小时域"里的星号等于是"每一个小时"。
/号每多长时间,例如,"*/3"在小时域中等于"0,3,6,9,12,15,18,21"。
crontab执行程序时环境变量和用户执行时不一致,在编写命令或脚本时要写全路径,或设置PATH。
当不能正常执行时可按以下流程调试:
1.查看是否在任务队列:

crontab -l

2.查看日记是否已执行:

tail /var/log/cron

3.重定义执行结果:

0 3 * * 0 back-sql >> /tmp/crontab.log 2>&1

4.如果是bash脚本,增加调试:

#/bin/bash
set -x

一些示例:

每分钟执行一次

*/1 * * * * cmd

每小时的第3和第15分钟执行

3,15 * * * * cmd

上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * cmd

每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2  *  * cmd

每晚的23点执行:

00 23 * * * /etc/init.d/smb restart

每周日23点执行

00 23 * * 0 /etc/init.d/smb restart
分类
最新文章
最近回复
  • 海运: 网络,找到相应的url编辑重发请求,firefox有此功能,其它未知。
  • knetxp: 用浏览器F12网络拦截或监听后编辑重发请求,修改url中的set为set_super,将POS...
  • Albert: 啊啊啊啊啊啊啊啊啊 我太激动了,终于好了英文区搜索了半天,翻遍了 pve 论坛没找到好方法,博...
  • jiangker: good, very helpful to me
  • fengfeng: N1 armbian 能有编译下内核吗。。我要开启can 不懂怎么操作
  • 1: 方法一ngtcp2要改下:./configure PKG_CONFIG_PATH=/usr/l...
  • 海运: 关闭服务器
  • 海风: override.battery.charge.low以及override.battery.r...
  • koldjf: 不能过滤
  • 杰迪武士: 此文甚好甚强巨,依照此文在树莓派2 + Rasbian上部署成功 感谢博主美文共赏