计划任务

计划任务是让电脑在指定时间自动执行命令或脚本

  • 每天凌晨备份数据库

  • 每周清理一次临时文件

  • 某个具体时间点发送邮件

Linux有两种主要的计划任务:

  1. 一次性任务(执行一次就结束,比如"明天早上8点发通知")

  2. 周期性任务(按固定频率重复执行,比如"每天凌晨3点备份")

一次性任务

 #at软件安装
 yum install -y at
 ​
 #at演示案例
 at 时间
 > 执行命令
 Ctrl + D 退出
 ​
 #常用命令
 atq                     # 查看所有等待执行的任务(会显示任务编号、时间、用户)
 atrm 1                  # 删除指定任务(比如删除编号为1的任务)

周期性任务

 #设置计划任务
 crontab                     # 设置时间与执行命令
 crond                       # 服务端守护进程,到时间自动执行命令
 crontab -e                  # 编辑计划任务
 crontab -l                  # 查看计划任务列表
 crontab -r                  # 删除所有计划任务
 crontab -u 用户              # 指定执行命令的用户
 ​
 #编辑文件内容
 * * * * * 命令               # *代表执行时间(分时日月周),后面加上执行命令
 ​
 #例:
 */5 *  *  *  *  /usr/sbin/ntpdate  192.168.8.50 &> /dev/null        
 5分钟执行一次,绝对路径,需要同步的ip,&后台运行,>指定到黑洞文件

时间字段说明

字段

范围

特殊符号举例

含义解释

分钟

0-59

*/10

每10分钟执行一次

小时

0-23

8-10

8点、9点、10点执行

日期

1-31

1,15

每月1号和15号执行

月份

1-12

6

6月执行(也可用英文缩写jun)

星期

0-6(0=日)

1

每周一执行(1代表周一)