crontab命令周期性计划任务

系统集成 盛行 5年前 (2015-11-02) 410次浏览 已收录 0个评论 扫描二维码
文章目录
[隐藏]

1.释义

crontab命令周期性计划任务

1.1.crontab配置文件说明

[root@itbkz base]#vim /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- 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
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

SHELL=/bin/bash:通过bash解释命令
PATH=/sbin:/bin:/usr/sbin:/usr/bin:默认命令路径
MAILTO=root:邮件信息发送给root
*:表示任意的(分、时、日、月、周)时间都执行
-:表示一个时间范围段,如果9-10点
,:表示分隔时段,如1,3,6表示周一、周三、周6
/n:表示每隔n单位时间,如*/5表示每隔5分钟

2.系统帮助

crontab: usage error: unrecognized option
Usage:
 crontab [options] file
 crontab [options]
 crontab -n [hostname]

Options:
 -u   管理其它用户的计划任务
 -e         编辑crontab文件内容
 -l         查看crontab文件内容
 -r         删除crontab文件内容
 -i         prompt before deleting
 -n   set host in cluster to run users' crontabs
 -c         get host in cluster to run users' crontabs
 -s         selinux context
 -x   enable debugging

Default operation is replace, per 1003.2

3.示例解析

00 02 * * * date:每天凌晨2点整
00 02 1 * * date:每月1号凌晨2点整
00 02 14 2 * date:每年2月14号凌晨2点整
00 02 * * 7 date:每周日凌晨2点整
00 02 * 6 5 date:每年6月的周5凌晨2点整
00 02 14 * 7 date:每月14号凌晨2点整或每周日凌晨2点整,两个时间都执行
00 02 14 2 7 date:每年2月14号凌晨2点整或每周日凌晨2点整,两个时间都执行
* * * * * date:每分钟都执行
*/5 * * * * date:每隔5分钟
00 02 * 1,5,8 * date:每年1,5,8月的每天凌晨2点整
00 02 1-8 * * date:每月1号到8号的凌晨两点整
* 02 * * * date:每天凌晨2点的每分钟
* * 14 2 * date:每年2月14号的每小时的每分钟

上面的00也可以写成0,意义相同

4.查看

4.1.任务计划

[root@itbkz base]#crontab -l

4.2.其它用户任务计划

[root@itbkz.com ~]#crontab -l -u itbkz

5.编辑

5.1.自己任务计划

[root@itbkz base]#crontab -e

4.2.其它用户任务计划

[root@itbkz.com ~]#crontab -e -u itbkz

6.删除

5.1.自己任务计划

[root@itbkz.com ~]#crontab -r

4.2.其它用户任务计划

[root@itbkz.com ~]#crontab -r -u itbkz
[root@itbkz.com ~]#crontab -l -u itbkz
no crontab for itbkz

7.导出

5.1.自己任务计划

[root@itbkz.com ~]#crontab -l >crontab.txt 
[root@itbkz.com ~]#cat crontab.txt 
* * * * * date > /tmp/date.txt

4.2.其它用户任务计划

[root@itbkz.com ~]#crontab -l -u itbkz > itbkz.crontab.txt
[root@itbkz.com ~]#cat itbkz.crontab.txt 
* * * * * date > /tmp/date.txt

8.导入

5.1.自己任务计划

[root@itbkz.com ~]#crontab crontab.txt 
[root@itbkz.com ~]#crontab -l
* * * * * date > /tmp/date.txt

4.2.其它用户任务计划

[root@itbkz.com ~]#crontab -u itbkz itbkz.crontab.txt 
[root@itbkz.com ~]#crontab -u itbkz -l
* * * * * date > /tmp/date.txt
任务计划写到crontab.txt文件中。

9.环境变量

/etc/crontabcrontab配置文件
/etc/cron.deny:该文件中所列用户不允许使用crontab命令
/var/spool/cron/:所有用户定时文件都存放此目录,文件以用户名命名
/var/log/cron*定时任务执行后的日志文件

10.注意

使用crontab -lcrontab -e实际是在查看和编辑/var/spool/cron/$USERNAME文件。


IT博客站版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:crontab命令周期性计划任务
喜欢 (0)
[使用支付宝扫码]
分享 (0)
盛行
关于作者:
企业应用技术爱好者,喜欢分享知识。如果文章中有错误,欢迎指正,谢谢。
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址