九. crontab计划任务

有一些定期定时的任务,如周期性的清理一下/tmp,周期性的去备份一次数据库,周期性的分析日志等等

crontab介绍

crontab 命令常见于 Unix 和类 Unix 的操作系统之中(Linux 就属于类 Unix 操作系统),用于设置周期性被执行的指令。该命令从输入设备读取指令,并将其存放于 crontab 文件中,以供之后读取和执行。通常,crontab 储存的指令被守护进程激活,crond 为其守护进程,crond 常常在后台运行,每一分钟会检查一次是否有预定的作业需要执行

crontab格式

0.启动rsyslog(忽略):

1.crontab -e用当前用户添加执行的命令格式如下:

sudo crontab -e:是用root账号添加任务

第六个字段是命名

特殊符号:

例子:

添加成功会有crontab: installing new crontab

2.在上面的文件中加入

意思:每隔8分钟执行后面命令,也是在Desktop目录下创建文件夹(⚠️注意:上面路径要正确。⚠️date +\%Y ,date后要有个空格)

可以用crontab -l查看添加的是否正确,虽然添加了任务,但是cron的进程没有启动不会执行,不会监听任务

3.查看cron是否后台开启

4.查看到执行任务命令之后在日志中的信息反馈 sudo tail -f /var/log/system.log

5.删除任务 crontab -r


❌:定时任务没有执行

1.权限问题 没有x 2.路径问题 3.时间差问题 4.变量问题 5.非Ubuntu没有开启 6.命令有误


crontab总结

  1. crontab -e 添加任务会在/var/spool/cron/crontabs添加一个该用户自己的任务文档,为了隔离.
  2. 系统级别的用sudo权限编辑/etc/crontab文件就行
  3. cron最小单位是分钟,每分钟去读/etc/crontab/var/spool/cron/crontabs里内容

crontab是Linux系统中添加计划定时任务不可少的工具。

发表回复

电子邮件地址不会被公开。 必填项已用*标注

Protected with IP Blacklist CloudIP Blacklist Cloud