crontab定时器

crontab定时器

linux下的定时任务
1、编辑使用crontab -e
    一共6列,分别是:分、时、日、月、周、命令

2、查看使用crontab -l

3、删除任务crontab -r

4、查看crontab执行日志
    tail -f /var/log/cron
    必须打开rsyslog服务cron文件中才会有执行日志(service rsyslog status)
    tail -f /var/spool/mail/root(查看crontab最近的执行情况)

5、查看cron服务状态
    service crond status

6、启动cron服务
    service crond start
编辑使用的基本格式

基本格式:

*    *   *   *   *   command
分  时  日  月  周
第1列(f1)表示分钟1~59 每分钟用*或者 */1表示 
第2列(f2)表示小时0~23(0表示0点) 
第3列(f3)表示日期1~31 
第4列(f4)表示月份1~12 
第5列(f5)标识号星期0~6(0表示星期天) 
第6列(f6)要运行的命令 
  • 当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推

  • 当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推

  • 当 f1 为 /n 时表示每 n 分钟个时间间隔执行一次,f2 为 /n 表示每 n 小时个时间间隔执行一次,其馀类推

  • 当 f1 为 a, b, c,… 时表示第 a, b, c,… 分钟要执行,f2 为 a, b, c,… 时表示第 a, b, c…个小时要执行,其馀类推

    使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。

crontab的一些基本例子:
* * * * * /usr/local/hadoop/sbin/restart-all.sh 
每分钟都执行一次这个脚本

30 21 * * * /usr/local/hadoop/sbin/restart-all.sh
每天的21:30都执行这个脚本

30 21 1,10,20 * * /usr/local/hadoop/sbin/restart-all.sh
每个月的1,10,20的21:30都执行这个脚本

0 6-12/3 * 12 * /usr/bin/backup
在12月内,每天的早上6点到12点中,每隔3个小时执行一次。

0 17 * * 1-5 mail -s "hi" [email protected] < /tmp/maildata
每周的17:00发一份信,内容是 hi 给[email protected]

0 6 * * * nohut /export/services/storm/nimbus restart > /dev/null 2 > &1
每天的早上6点启动strom的nuibus 并且将执行之后的信息发送给无底洞,不显示

你可能感兴趣的:(linux,大数据)