当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]在Linux上计划任务服务的详细说明中,我介绍了在Linux上使用at命令来添加单个计划任务的方法。 尽管at命令本质上可以运行我们的大多数日常工作场景,但它很复杂,情况更加有限。 crontab命令可以很好地解决此问题。 这就是我们向大家介绍crontab命令的主要原因。

在Linux上计划任务服务的详细说明中,我介绍了在Linux上使用at命令来添加单个计划任务的方法。 尽管at命令本质上可以运行我们的大多数日常工作场景,但它很复杂,情况更加有限。 crontab命令可以很好地解决此问题。 这就是我们向大家介绍crontab命令的主要原因。

在我们正式学习crontab命令之前,我们先来学习一下crond服务的参数的口诀“分、时、日、月、星期 命令”,这正是crond服务设置任务的参数格式,我们需要注意的是,如果有些字段没有设置,则需要使用星号(*)占位。

在学习了crond服务参数用法之后,我们来用crontab命令来创建几个计划任务。创建计划任务统一使用命令:crontab -e。

案例一:假设在每周二、四、六的早上8点1分,我们都需要通过tar打包的方式备份指定的目录文件,使其作为一个备份文件。我们该如何创建计划任务呢?我们可以使用crontab -e命令来创建计划任务。具体的实现效果的参数如crontab -l命令结果所示:

[root@redhat ~]# crontab -e

no crontab for root - using an empty one

crontab: installing new crontab

[root@linuxprobe ~]# crontab -l

1 8 * * 2,4,6 /usr/bin/tar -czvf etc_bak.tar.gz /etc

这里要重点为大家强调三个知识点:

1、时间段的表示

除了用逗号(,)来分别表示多个时间段,例如“8,9,12”表示8月、9月和12月。还可以用减号(-)来表示一段连续的时间周期(例如字段“日”的取值为“12-15”,则表示每月的12~15日)。以及用除号(/)表示执行任务的间隔时间(例如“*/5”表示每隔5分钟执行一次任务)。

2、命令必须用绝对路径

在crond服务的计划任务参数中,所有命令一定要用绝对路径的方式来写,如果不知道绝对路径,请用whereis命令进行查询。

3、特殊情况

计划任务中的“分”字段必须有数值,绝对不能为空或是*号,而“日”和“星期”字段不能同时使用,否则就会发生冲突。

通过crontab计划任务,可以更好的解决运维难题,极大地减少特定时间的、循环性的维护工作,减轻运维人员的运维压力。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭