linux下执行定时任务的方法

时间:2022-06-10 08:03:15
var/spool/cron/用户 文件夹下
编辑任务
crontab -e
查看任务
crontab -l
删除任务
crontab -r

*/1 * * * * python /root/xytest/pythoncron/cron1.py >> ~/xytest/cronlog/log 2 >&1

类似上面的样子
在crontab中添加这样的命令然后就可以运行了

但是,上面的方法还是比较凌乱的,因为如果一个项目的任务比较多那么就会很乱。
所以推荐的做法是把相关的任务放在/etc/cron.d文件夹下面
例如:
在/etc/cron.d 文件夹下创建一个自己的cron描述脚本。里面的内容是要定时执行的任务即可
在执行的时候,我们一般会把一个项目里面的运行记录放在一个shell脚本里面。在部署的会后会在
/etc/cron.d文件夹下面做一个硬连接(这里需要注意,有的系统内核是不支持硬连接的,所以要在部署好了之后在/var/log/cron日志中看一下是否正常执行了,这个很重要的。如果发现不支持硬链接的方式,就需要把脚本直接复制到/etc/cron.d文件夹中了)。

需要注意的是如果实在/etc/cron.d文件夹下做一个shell脚本的话,需要用下面的方式,需要指定用户

*/1 * * * * root python /root/xytest/pythoncron/cron1.py >> ~/xytest/cronlog/log 2>&1


和上面的有区别,因为上面的crontab -e 的方式是已经知道是那个用户的进行的操作,但是在这种/etc/cron.d的方式是不知道用户的,所以在cron表达式的后面需要添加执行用户的信息。