centos 用crontab执行定时计划任务

作者 : 开心源码 本文共1257个字,预计阅读时间需要4分钟 发布时间: 2022-05-12 共216人阅读

就像在windows上有计划任务一样,centos7 自然也有计划任务,而且设置更为灵活,好用。在centos7 上可以利用crontab 来执行计划任务, 依赖与 crond 的系统服务,这个服务是系统自带的,可以直接查看状态,启动,中止。

1.、查看cron的状态,设为开机启动

$ systemctl status crond (查看状态)

$ systemctl enable crond (设为开机启动)

$ systemctl start crond (启动crond服务)

2、编辑crontab 的配置文件,设置定时任务。

$ crontab -u 客户名 -e (编辑客户的定时任务,指定的执行的客户,默认为当前执行命令的客户)

——————————————————————————————–

# crontab基本格式

# +—————- minute 分钟(0 – 59)

# | +————- hour 小时(0 – 23)

# | | +———- day 日期(1 – 31)

# | | | +——- month 月份(1 – 12)

# | | | | +—- week 星期(0 – 7) (星期天=0 or 7)

# | | | | |

格式为:

# * * * * * 客户 要运行的命令

例如:

*/30 * * * root /usr/local/mycommand.sh (每天,每30分钟执行一次 mycommand命令)

* 3 * * * root /usr/local/mycommand.sh (每天凌晨三点,执行命令脚本,PS:这里因为第一个的分钟没有设置,那么就会每天凌晨3点的每分钟都执行一次命令)

00 3 * * * root /usr/local/mycommand.sh (这样就是每天凌晨三点整执行一次命令脚本)

*/10 11-13 * * * root /usr/local/mycommand.sh (每天11点到13点之间,每10分钟执行一次命令脚本,这一种用法也很常用)

10-30 * * * * root /usr/local/mycommand.sh (每小时的10-30分钟,每分钟执行一次命令脚本,共执行20次)

10,30 * * * * * root /usr/local/mycommand.sh (每小时的10,30分钟,分别执行一次命令脚本,共执行2次)

$ crontab -u 客户名 -l (列出客户的定时任务列表)

3、保存退出后,就可生效,默认crontab会每分钟检查一次任务文件的。

除了这样编辑外,还可以直接写到crond的主配置文件内,默认执行者为root。

$ vim /etc/crontab (直接在最下面增加你的任务命令就可)

PS:特别注意,crond的任务计划, 有并不会调用客户设置的环境变量,它有自己的环境变量,当你用到少量命令时,比方mysqldump等需要环境变量的命令,手工执行脚本时是正常的,但用crond执行的时候就会不行,这时你要么写完整的绝对路径,要么将环境变量增加到 /etc/crontab 中。

centos 用crontab执行定时计划任务

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » centos 用crontab执行定时计划任务

发表回复