ITPub博客

首页 > Linux操作系统 > Linux操作系统 > crontab定时任务

crontab定时任务

原创 Linux操作系统 作者:we6100 时间:2014-03-28 15:10:15 0 删除 编辑
说明:crontab 是用来让使用者在固定时间或固定间隔执行程序

1、/etc/cron.deny 和 /etc/cron.allow 

/etc/cron.deny 表示不能使用crontab 命令的用户
/etc/cron.allow 表示能使用crontab的用户。

如果两个文件同时存在,那么/etc/cron.allow 优先。
如果两个文件都不存在,那么只有超级用户可以安排任务。

2、用户的定时任务查看
方法一:[root@server /]# cat /var/spool/cron/用户名
方法二:[root@server /]#crontab -l
方法三:[root@server /]#crontab -u 用户名 -l  //查看其他用户的定时任务

3、crontab用法
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)                       显示用户crontab文件的内容
        -r      (delete user's crontab)                     删除用户定义的文件crontab
        -i      (prompt before deleting user's crontab)     删除crontab时给予提示信息

        -s      (selinux context)

4、添加定时任务
crontab -e
格式:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * /command path //定时任务的格式要求

前5个字段分别表示:
分钟:0-59
小时:1-23
日期:1-31
月份:1-12
星期:0-6(0表示周日)

还可以用一些特殊符号:
*: 表示任何时刻
,: 表示分割
  -:表示一个段,如第二端里: 1-5,就表示1到5点
/n : 表示每n的单位执行一次,如第二段里,*/1, 就表示每隔1个小时执行一次命令。也可以写成1-23/1.

5、定时任务的输出设定
0 0 * * * /home/oracle/backup.sh >/home/oracle/backup.log 2>&1 &

这里设定backup.sh为备份脚本,以上语句表示将备份脚本的标准输出与错误输出都放入backup.log中

1表示标准输出 
2表示错误输出.

将上面语句拆分
/home/oracle/backup.sh >/home/oracle/backup.log    //这里>前面没写1,默认是1
2>&1    //将错误输出2重定向到标准输出1,如果没有&,则代表将错误输出到名为1的文件里
&    //后台执行该命令

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27500440/viewspace-1131619/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-02-23

  • 博文量
    72
  • 访问量
    270615