Linux就该这么学——计划任务服务程序

计划任务的种类

一次性计划任务 : 例如在今晚23点30分开启网站服务

长期性计划任务 : 每周一的凌晨3点25分把/home/wwwroot目录打包备份为backup.tar.gz

一次性计划任务

     一次性计划任务顾名思义就是任务只执行一次,一般用于满足临时性的工作需求.

     一次性计划任务设置的命令 : at 时间

     一次性计划任务已设置好但还未执行的一次性计划任务 : at –l

     删除指定的一次性计划任务 : atrm 任务序号

一次性计划任务的例子

例子1 : 将系统设置为在今晚23点30分进行重启网站服务

例子2 : 查看一次性计划任务已设置好但还未执行的一次性计划任务

例子3 一次性设置两个同样的任务,并且删除掉其中一个任务

 

长期性计划任务

能够周期性的,有规律的执行某些具体任务,那么Linux系统中的crond服务就再适合不过了

创建,编辑计划任务的命令 : crontab -e

查看当前计划任务的命令 : crontab -l

删除某条计划任务的命令 : crontab -r

编辑其他用户的计划任务(root管理员才有的权限) : crontab -u

使用crond设置任务的参数字段说明

字段

说明

取值为0—59的整数

取值为0-23的任意整数

取值为1—31的任意整数

取值为1—12的任意整数

星期

取值为0—7的任意整数,其中0与7均为星期日

命令

要执行的命令或程序脚本

长期性计划任务的例子

例子 1 : 假设在每周一、三、五的凌晨 3 点 25 分,都需要使用 tar 命令把某个网站的数据目录进 行打包处理,使其作为一个备份文件。我们可以使用 crontab -e 命令来创建计划任务。为自己 创建计划任务无需使用-u 参数,具体的实现效果的参数如 crontab -l 命令结果所示

 

 

 

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

如果在 crond 服务中需要同时包含多条计划任务的命令语句,应每行仅写一条。

例子2 : 我们再添加一条计划任务,它的功能是每周一至周五的凌晨 1点钟自动清空/tmp 目录内的所有文件。尤其需要注意的是,在 crond 服务的计划任务参数中,所有命令一定要用绝对路径的方式来写,如果不知道绝对路径,请用 whereis 命令进行查询,rm 命令路径为下面输出信息中加粗部分。

 

 

 

 

 

注 :

1. 在 crond 服务的配置参数中,可以像 Shell 脚本那样以#号开头写上注释信息,这样 在日后回顾这段命令代码时可以快速了解其功能、需求以及编写人员等重要信息。

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

posted @ 2020-01-15 00:30  努力跟上大神的脚步  阅读(664)  评论(0编辑  收藏  举报