本次我们来讨论linux中的计划任务相关内容。首先我们要了解所谓的任务计划是为了在未来执行我们需要运行的脚本或服务,帮助我们定时工作的一种机制。下边我们就来详细说明。
任务计划的实现方式
1、在未来的某个时间点执行一次某任务
可以用两个命令来实现:at和batch
at格式:at 时间
at> 命令
at> ctrl+d :退出
指定时间:
绝对时间:HH:MM........
相对时间:now+#
模糊时间:noon(正午12:00)、midnight(午夜24:00)、teatime(喝茶时间16:00)……..
命令执行结果以邮件的形式发送给用户
at可用选项:
-l:显示作业列表
-d 作业号: 删除计划
batch:自动在系统空闲时执行命
使用格式和at一样,但不用指定时间。
2、周期性的执行某任务
cron:自身是一个不间断运行的服务
anacron:实现让cron因为各种原因在过去该执行而未执行的任务在恢复正常执行一次
系统cron
/etc/crontab
格式: 分钟 小时 天 月 周 用户 任务
用户cron
/var/spool/cron/用户名
格式: 分钟 小时 天 月 周 任务
有效取值
分钟:0-59
小时:0-23
天:1-31
月:1-12
周:0-7:;0和7都表示周日
时间统配表示:
*:对应的所有有效取值
1 * * * * 每个小时的第一分钟
,:离散时间点
1,15 * * * * 每小时的第一和第十五分钟
-:连续时间点
1-15 * * * * 每个小时的第一到第十五分钟
/#:对应取值范围内每多久一次
*/3 * * * * 每三分钟
用户任务管理:
crontab
-l:列出当前用户所有cron任务
-e:编辑
-r:移除所有任务
-u userID:管理指定用户的cron任务
Anacron
在/etc/anacrontab中分为四个字段
格式: 过期时间/天 开机运行时间/分钟 注释 任务
注意:cron环境变量:cron执行所有命令都去path环境变量指定路径下去找,所以使用命令时应该加上绝对路径:
PATH /bin:/sbin:/usr/bin:/usr/sbin
以上就是任务计划的内容,学会了它,将对我们以后提高工作效率起到作用,相信你会喜欢的,谢谢阅读。