Crontab 命令

1. 域

  • 6个域,分别代表特定时间类型,如下表格
分钟小时程序
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,satuser-name command to be executed
  • 1-5域中除了可以写入数字,还可以写入特殊符号,包含: * / - , 等,分别代表含义如下
  • * 代表所有的取值范围内的数字
  • /代表每的意思
  • -代表从某个数字到某个数字,
  • , 分开几个离散的数字。

2. 命令

  • crontab -l 在标准输出上显示当前的crontab。

  • crontab -r删除当前的crontab文件。

  • crontab -e 编辑当前的crontab文件,编辑后将自动安装

3. 服务

Linux 版本6.X7.X
启动服务service crond startsystemctl start crond
关闭服务service crond stopsystemctl stop crond
重启服务service crond restartsystemctl restart crond
重新载入配置service crond reloadsystemctl reload crond
查看服务状态service crond statussystemctl status crond

4. 注意事项

  • 切记在crontab中写入命令的**绝对路径**,例如rm -f test.txt就无法执行,写为/bin/rm -f /home/ec2-user/test.txt即可。

5. 例子

# 注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了。

# 每天早上6点,输出Good morning到/tmp/test.txt文件中。
0 6 * * * echo "Good morning" >> /tmp/test.txt

# 每两个小时,输出Good morning到/tmp/test.txt文件中。
0 */2 * * * echo "Good morning" >> /tmp/test.txt

# 晚上11点到早上8点之间每两个小时和早上八点,输出Good morning到/tmp/test.txt文件中。
0 23-7/2,8 * * * echo "Good morning" >> /tmp/test.txt

# 每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点,输出Good morning到/tmp/test.txt文件中。
0 11 4 * 1-3 echo "Good morning" >> /tmp/test.txt

# 每天的下午4点、5点、6点的5 min、15 min、25 min、35 min、45 min、55 min时,输出Good morning到/tmp/test.txt文件中。
5,15,25,35,45,55 16,17,18 * * * echo "Good morning" >> /tmp/test.txt

# 1月1日早上4点,,输出Good morning到/tmp/test.txt文件中,如果出现错误,或者有数据输出,数据作为邮件发给root
0 4 1 1 * echo "Good morning" >> /tmp/test.txt SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root

# 如果去掉"run-parts"这个参数,后面要运行的脚本名,而不是文件夹名。 
# 每小时以root用户执行/etc/cron.hourly内的脚本(1个或N个脚本程序)
01 * * * * root run-parts /etc/cron.hourly

# 每天早上4点02分以root用户执行/etc/cron.daily内的脚本(1个或N个脚本程序)
02 4 * * * root run-parts /etc/cron.daily 

# 每周日早上4点02分以root用户执行/etc/cron.weekly内的脚本(1个或N个脚本程序)
02 4 * * 0 root run-parts /etc/cron.weekly 

# 每月1号早上4点02分以root用户去执行/etc/cron.monthly内的脚本(1个或N个脚本程序)
02 4 1 * * root run-parts /etc/cron.monthly 

# 每周一,三,五的下午3:00系统进入维护状态,重新启动系统。
00 15 * * 1,3,5 shutdown -r +5

# 每天早晨3点20分执行用户目录下如下所示的两个指令(每个指令以;分隔): 
20 3 * * * (/bin/rm -f /tmp/test.txt;/bin/rm -rf /home/ec2-user/1.txt)  

# 每年的一月和四月,4号到9号的3点12分和3点55分执行/bin/rm -f mm.txt 这个文件(mm.txt文件位于用户自己的目录位置)。 
12,55 3 4-9 1,4 * /bin/rm -f mm.txt 
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值