Linux计划任务

Posted 弓长三虎

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux计划任务相关的知识,希望对你有一定的参考价值。

计划任务-at-cron-计划任务使用方法

在我们LINUX中,我们可以通过crontab和at这两个东西来实现计划任务的

计划任务的作用:是做一些周期性的任务,在生产中的主要用来定期备份数据

CROND:这个守护进程是为了周期性执行任务或处理等待事件而存在

任务调度分两种:系统任务调度,用户任务调度

计划任务的安排方式分两种:

一种是定时性的,也就是例行。就是每隔一定的周期就要重复来做这个事情

一种是突发性的,就是这次做完了这个事,就没有下一次了,临时决定,只执行一次的任务


at和crontab这两个命令:

at:它是一个可以处理仅执行一次就结束的指令

crontab:它是会把你指定的工作或任务,比如:脚本等,按照你设定的周期一直循环执行下去

at计划任务的使用

语法格式: at  时间  ;服务:atd    

systemctl start atd     #开启atd服务
systemctl status atd   #查看atd服务状态
systemctl is-enabled atd    #查看是否开始开机启动服务,如果弹出enabled,

Linux计划任务_任务调度

创建定时任务:

Linux计划任务_linux_02

Linux计划任务_计划任务_03

at计划任务的特殊写法
at 20:00 2018-10-1   在某天
at now +10min    10分钟后执行
at 17:00 tomorrow   明天下午5点执行
at 6:00 pm +3 days   在3天以后的下午6点执行
at 23:00 < a.txt
删除at计划任务
语法: atrm  任务编号
[root@xuegod63 ~]# at -l
1 Wed Sep 14 20:16:00 2022 a root
[root@xuegod63 ~]# atrm
[root@xuegod63 ~]# at -l

crontab定时任务的使用

crond命令定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作

cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。

linux任务调度的工作主要分为以下两类:

系统执行的工作:系统周期性所要执行的工作,如更新whatis数据库  updatedb数据库,日志定期切割,收集系统状态信息,/tmp定期清理

启动crond服务

systemctl start crond
systemctl enable crond

cron命令参数介绍:

crontab的参数:

crontab -u hr       #指定hr用户的cron服务

crontab -l          #列出当前用户下的cron服务的详细内容

crontab -u mk -l   #列出指定用户mk下的cron服务的详细内容

crontab -r   #删除cron服务

crontab -e   #编辑cron服务

例如:
crontab -u root -l     # root查看自己的cron计划任务
crontab -u san -r      # root想删除san的cron计划任务

cron -e 编辑时的语法

Linux计划任务_任务调度_04

星期日用0或7表示

一行对应一个任务,特殊符号的含义: 

*

代表取值范围内的数字

(任意/每)

/

指定时间的间隔频率

*/10   0-23/2

-

代表从某个数字到某个数字

8-17

分开几个离散的数字

6,10-13,20


以上是关于Linux计划任务的主要内容,如果未能解决你的问题,请参考以下文章

Linux计划任务

计划任务

Linux任务计划

linux脚本放到计划任务里面执行结果与手动运行不一致

Linux下计划任务以及crontab权限问题

linux crontab 定时任务计划