LINUX中定时任务的实现,基础命令(一)

一、Linux定时任务简介

计划任务是需要在指定时间执行的任务或者是周期性执行的任务,比如凌晨3点重启设备,每周对日志文件备份等。Linux系统会内置at和cron服务,at服务用来在指定时间执行任务,cron用来周期性执行任务。今天我们只讲一下cron就已经可以对付日常工作了
python在LINUX中定时任务如何写一个小例子

二、cron周期性任务

cron周期性任务依赖于系统后台的crond进程,我们首先确认cron服务是否开启,执行命令:

systemctl status crond

如果出现如下结果,就表示crond任务已经开启 :

status_croud.png

(1).执行命令crontab可以使我们创建定时任务,该常用命令如下:

因此,执行命令:

crontab -e  #表示新创建或编辑定时任务
crontab -r  #表示删除定时任务
crontab -l  #表示显示定时任务

(2).创建定时任务需要遵循一定的规范, 在crond文件中,前面的五列都代表一个时间,从左到右分别是分钟、小时、天、月、星期,如果不做设置,可以用*跳过,最后一列表示要执行的任务

在每一列对应的地方写入具体数值就可以表示定时执行,还可以使用短杠表示一段时间,如果*后面加入斜杠,则表示没隔该端时间执行一次。
crond定时任务时间设置示例如下:

0 3 * * *     #表示每天3点执行
0 */3 * * *   #表示每隔3小时执行
0 3 2 * 3    #表示每个月2号的3点或者每周三的3点执行
* * * * *     # 表示每分钟执行一次
* 1-10 * **  #表示每天的1点到10执行

三.cron定时任务分为系统的定时任务和用户的定时任务。crond定时任务主要文件如下:

(1)、/var/spool/cron/

该文件主要用于存放用户设置的定时任务,会以用户名来命名,当用户创建cron定时任务时,
就会在该目录下生成一个同名文件,该文件存储了用户定时任务的具体信息。

2、/etc/cron.deny /etc/cron.allow

与at定时任务类似,cron.allow存放了运行创建定时任务的用户,而cron.deny则存放了不允许创建定时任务的用户,
只有当cron.deny不存在时,cron.allow才会生效。

3、/etc/cron.monthly/

该文件用来存放系统每个月需要执行的脚本

4、/etc/cron.weekly/

该文件用来存放系统每周需要执行的脚本

5、/etc/cron.daily/

该文件用来存放系统每天需要执行的脚本

6、/etc/cron.hourly/

该文件用来存放系统每小时需要执行的脚本
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容