linux 定时任务 cron

1、查看是否支持

[root@xuexi3 ~]# rpm -qa |grep cron
cronie-anacron-1.4.11-23.el7.x86_64
cronie-1.4.11-23.el7.x86_64
crontabs-1.11-6.20121102git.el7.noarch  # 定时任务主程序包,提供crond守护进行等工具

[root@xuexi3 ~]# systemctl  status crond  #查看 crond状态是否在运行

系统定时任务配置文件 /etc/crontab

 

crontab

crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似

参数解释使用示例
-l list查看定时任务 crontab -l
-e edit编辑定时任务 crontab -e
-i 删除定时任务,提示用户确认删除,避免出错 crontab -i
-r 删除定时任务,移除/var/spool/cron/username文件,全没了 crontab -r
-u user 指定用户执行任务,root可以管理普通用户计划任务 crontab -u

crontab命令就是在修改/var/spool/cron中的定时任务文件

用户查看定时任务

crontab -l #列出用户设置的定时任务,等于cat /var/spool/cron/root
crontab -e #编辑用户的定时任务,等于如上命令编辑的是 vi /var/spool/cron/root文件

检查crond服务是否运行

[root@xuexi3 ~]# systemctl is-active crond
active

[root@xuexi3 ~]# ps -ef |grep crond
root       1611      1  0 11:57 ?        00:00:00 /usr/sbin/crond -n

定时任务相关的文件

/var/spool/cron 定时任务的配置文件所在的目录
/var/log/cron  定时任务的日志文件
/etc/cron.deny 定时任务黑名单

定时任务的语法格式

 

查看定时任务配置文件

cat /etc/crontab

编辑当前用户的 crontab 文件

crontab -e

添加定时任务规则

*/10 * * * * /绝对路径/你的脚本.sh

通过 Bash 解释器执行(避免权限问题)

*/10 * * * * /bin/bash /绝对路径/你的脚本.sh

记录输出日志(调试推荐)

*/10 * * * * /bin/bash /绝对路径/你的脚本.sh >> /路径/日志文件.log 2>&1

确保脚本有可执行权限

chmod +x /绝对路径/你的脚本.sh

测试脚本能否手动运行

/bin/bash /绝对路径/你的脚本.sh

检查 cron 日志(排查错误)

grep CRON /var/log/cron    # CentOS/RHEL


posted @ 2025-06-21 09:41  leolzi  阅读(25)  评论(0)    收藏  举报