自学内容网 自学内容网

Linux中的计划任务

一、一次性任务计划执行 -- at

at命令允许用户在指定的时间点执行一次性任务。这些任务可以是任何有效的shell命令或脚本,使得用户能够在未来的某个时刻自动运行所需的任务。(at命令的执行时间通常不是精确的,它会在指定的时间周围执行任务。

1、启动atd服务

       在使用at命令之前,需要确保系统中的atd服务已经启动。可以使用systemctl start atd命令来启动atd服务,并使用systemctl status atd来检查服务的运行状态。

2、创建at任务

    1)使用 at 命令后跟指定的时间点来创建at任务。eg:  at 3pm表示在下午3点执行任务。

    2)时间点可以采用多种格式,包括绝对时间(如HH:MM或MMDDYY)和相对时间(如now+[n]minutes/hours/days/weeks)

    3)  在输入时间点后,按Enter键进入命令行编辑模式,然后输入要执行的命令或脚本。输入完成后,按Ctrl+D键保存并退出。 

3、查看at任务

     使用 atq 命令可以显示当前系统中所有待执行的at任务列表。

4、删除at任务

      如果不再需要某个at任务,可以使用  atrm+任务编号  将其从任务列表中删除。该操作需要知道任务的编号,该编号可以在atq命令的输出中找到。

二、周期性任务执行 -- crontab

计划任务(crontab)是指在Linux系统中,利用cron(crond)这个系统服务来控制的定时执行工具,它允许用户创建和管理计划任务,以便在特定的时间间隔或时间点自动运行命令或脚本。Crontab文件包含一系列计划任务条目,每个条目都定义了一个任务的执行时间和要运行的命令或脚本。这些任务可以按照分钟、小时、日、月和星期等不同的时间单位进行安排。 

1、crontab的组成部分

     时间字段由五个部分组成,每个部分用空格分隔。其分别表示分钟(0-59)、小时(0-23)、日期(1-31)、月份(1-12)和星期(0-7,其中0和7都表示星期日)。

    

2、crontab的基本操作

1)查看crontab任务

     使用 crontab -l 命令可以查看当前用户的 crontab 任务列表。

2)编辑crontab任务

     使用 crontab -e 命令可以编辑当前用户的 crontab 任务列表。系统会打开一个文本编辑器,用户可以在其中编辑定时任务的时间规则和要执行的命令或脚本。

3)删除crontab任务

     使用 crontab -r 命令可以删除当前用户的 crontab 任务列表。系统会提示用户确认是否删除所有定时任务,确认后系统会将当前用户的crontab文件清空。

3、时间表达式中的特殊字符含义

 *:表示所有可能的值,表示在所有时间点都执行任务。

 ,:用于分隔多个值,表示多个时间点执行任务。

 -:用于指定一个范围内的连续值,表示一个范围内的时间点执行任务。

 /:用于指定一个步长,表示每隔一定时间执行。

三、相应练习

1.设置一次性计划任务在18:00时关闭系统,并查看任务信息。

[root@localhost ~]# at 18:00
warning: commands will be executed using /bin/sh
at Sat Nov 16 18:00:00 2024
at> shutdown -h now
at> <EOT>
job 7 at Sat Nov 16 18:00:00 2024
[root@localhost ~]# atq
7Sat Nov 16 18:00:00 2024 a root

2.每周日凌晨2点30分,运行cp命令对/etc/fstab文件进行备份,存储位置为/backup/fstab-YYYY-MM-DD-hh-mm-ss。

30 2 * * 7 cp /etc/fstab /backup/fstab-$(date +\%Y-\%m-\%d-\%H-\%M-\%S)

3.每周2、4、7的晚上8:45分,备份/var/log/secure文件至/logs目录中,文件名格式为“secure-yyyymmdd”。

45 20 * * 2,4,7 cp /var/log/secure /logs/secyre-$(date +\%Y\%m\%d)


4.每两小时取出当前系统/proc/meminfo文件中以S或M开头的行信息追加至/tmp/meminfo.txt文件中。

* */2 * * * grep '^[SM]' /proc/meminfo >> /tmp/meminfo.txt


原文地址:https://blog.csdn.net/2301_77300113/article/details/143818069

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!