前言
crond是Linux系统中的一个守护进程,负责定期执行预设的任务,也称为计划任务。它可以根据用户的需求,在指定的时间、日期或周期性地执行特定的命令或本crond的用是自动化和定时执行任务,可以用来实现系统维护、数据备份、监控等功能。通过ond,用户可以在系统闲置或指定的时间段执行一些重复性的任务,免手动操作带来的繁琐和错误。 crond的配置文件是/etc/crontab,其中可以指定要执行的任务的时间、命令或脚本的路径。用户也可以使用crontab令来编辑自己的划任务,每个用户都可以有自己的计划任务列表。 通过crond,用户可以定时执行命令或脚本,每分钟、每小时、每天、每周或每月等不同的时间间隔都可以定。crond还可以通过日志文件记录任务的执行况,方便用户查看和排查问题。 总之crond在Linux系统中起了自动化和定时执行任务的重要作用,提高了系统的效率和可靠性。
那么今天我们就一起先进行一个简单学习吧!
一、一次性任务at
at用于执行一次性任务,只执行一次之后不会再执行,在书写at任务之前要查看一下系统时间:date或者hwclock 可以使用
systemctl status atd
查看atd服务的状态
1.创建并执行任务
例如:我使用date查看一下日期是2023年 08月 07日 星期一 19:13:00 下面我想在2023年 08月 07日 星期一 19:15:00创建一个目录test1
语法格式:
at time[HH:MM] date[yyyy-mm-dd]
需要执行的命令
按住Ctrl+D
atq查看任务
atrm 序号 (取消对应的任务)
at 19:15 2023-08-07 mkdir /test1 // [ctrl+d]
date 2023年 08月 07日 星期一 19:13:00 CST [root@bogon /]# at 19:15 2023-08-07 at> mkdir /test1 at> <EOT> job 1 at Mon Aug 7 19:15:00 2023
验证:test1创建成功
2.创建任务查看任务、取消任务
现在我们创建一个目录test2之后查看并取消这个任务
date 2023年 08月 07日 星期一 19:36:32 CST [root@bogon /]# at 19:40 at> mkdir /test2 at> <EOT> job 3 at Mon Aug 7 19:40:00 2023 [root@bogon /]# atq 3 Mon Aug 7 19:40:00 2023 a root [root@bogon /]# atrm 3 [root@bogon /]# atq
验证:查看test2是否创建
二、crond周期性任务
使用crond命令可以进行一些周期性的重复操作,也可以结合脚本使用时比较便捷的一种方法,在这里我就先简单的对crond命令进行学习
1.在配置文件中修改
1).crond 的配置文件 /etc/crontab 其书写格式在配置文件有所展示
* * * * * username command 对应 分 时 日 月 周 用户 命令
2).在配置文件中设置52 19 * * * root mkdir /test3 每天19:53创建test3
验证:
2.使用crontab命令编辑任务。选项-e编辑任务、-l查看任务、-r删除任务、-u指定运行任务的用户
(要注意的是这里要写任务的绝对路径,可以使用which+命令来查看绝对路径;并且所有用户定义的crontab都会保存在/var/spol/cron目录中,并且以用户名命名。但是要注意定期整理这些邮件确保 系统正常使用)
1)下面创建一个目录hy并删除hy,首先我们来看看mkdir和rm命令的绝对路径
2)我想用root用户的身份来编辑任务crontab -u root -e 此时会进入编辑页面,我们创建任务:20:20root用户创建目录hy,20:26root用户删除hy
crontab -l 查看任务
验证:
创建成功
删除成功
3)如果想删除任务可使用crontab -r
总结
今天和大家分享的内容比较简单,但是也是比较实用的内用,希望看完能帮助到大家,谢谢。