Linux定时任务crontab

常用命令

crontab -e 进入定时脚本,编辑后保存即立即生效


crontab -l 查看用户定时脚本


tail -f /var/log/cron 查看执行日志


service crond status 查看定时器运行状态


service crond restart 重启定时器


定时任务不执行原因

定时任务设置的格式正确,手动执行也没问题,但是定时任务就是不执行,这种情况的出现,一般是由下面几个原因造成的。

  • crond服务未启动

    需要首先排查下crond服务是否启动,可使用systemctl status crond 命令查看,如果未启动,则启动即可。

  • 脚本无权限

    如果要执行脚本无权限,通过chmod命令加上权限即可。

  • 文件路径问题

    定时任务要执行的脚本中涉及文件路径时,一定要写全局路径,不能写相对路径。

  • 环境变量问题

    定时任务要执行的脚本要用到java或其他环境变量时,需要通过source命令引入环境变量。

    注意:执行启动java程序时必须在脚本中加入引入linux服务器本身的环境变量,因为crontab的环境变量跟linux环境变量不一样的,如果不引入读取环境变量,则会导致执行失败

xml 复制代码
#!/bin/sh

source /etc/profile
source ~/.bash_profile

执行示例:

xml 复制代码
*/1 * * * * cd /home/project/zjdx/gateway/ump-mtreceiver && /bin/sh ./mtreceiver.sh stop&& sleep 10 && /bin/sh ./mtreceiver.sh start
相关推荐
PH_modest3 分钟前
【Linux跬步积累】——thread封装
linux·运维·服务器
秋说8 分钟前
本地Ubuntu轻松部署高效性能监控平台SigNoz与远程使用教程
linux·运维·ubuntu
Joeysoda10 分钟前
Java数据结构 (从0构建链表(LinkedList))
java·linux·开发语言·数据结构·windows·链表·1024程序员节
一个处女座的暖男程序猿24 分钟前
MyBatis Plus 中常用的 Service 功能
linux·windows·mybatis
晚秋贰拾伍27 分钟前
设计模式的艺术-命令模式
运维·设计模式·运维开发·命令模式·开闭原则
happybasic29 分钟前
一个基于Python+Appium的手机自动化项目~~
运维·appium·自动化
A charmer32 分钟前
Linux 进程环境变量:深入理解与实践指南
linux·运维·服务器·开发
云游的二狗43 分钟前
【VMWare Workstation 17】安装Debian 12.8DVD
运维·docker·debian
cv-daily1 小时前
通过docker overlay2目录名查找容器名和容器ID
运维·docker·容器
努力的小T2 小时前
基于 Bash 脚本的系统信息定时收集方案
linux·运维·服务器·网络·云计算·bash