Linux下的定时任务

97 阅读1分钟

Linux系统中的定时任务,由cron(服务名称:crond)来控制,是个系统服务,默认情况下是开启状态的
操作系统安装成功后,会默认安装crond服务并自动启动crond进程
crond会每分钟定期检查有没有要执行的任务,如果有,就会自动执行

# 启动服务
service crond start
# 关闭服务
service crond stop
# 查看服务状态
service crond status

有2种调度任务:系统调度任务和用户调度任务

系统调度任务

配置文件:/etc/cron.d

image.png 每一行代表一项定时任务,每行的格式:
分钟 小时 日 月 周 用户名 任务命令(command -v...)\

  • 分钟:0-59
  • 小时:0-23
  • 日:1-31
  • 月:1-12
  • 周:0-7(这里0、7都是周日)
  • *:表示任意
  • /:表示每,如每天,每小时等
  • ,:分开几个离散的数字
  • —:从某个数字到某个数字

用户调度任务

用户自己创建的定时任务,例如定制查询、发送邮件、备份数据等
用户自定义创建的定时任务一般保存在这个目录下:/var/spool/cron/crontabs \

# 进入目录
cd /var/spool/cron/crontabs
# 执行下面的命令,以当前用户名为文件名创建一个文件
crontab -u root -e
# 输入 i 进入编辑模式,创建一个定时任务,格式:* * * * * command
30 20 * * * echo "This is test log"
# 按ESC退出编辑模式
# 保存退出
:wq
# 检查当前用户下的定时任务
crontab -l
# 删除定时任务
crontab -r