定时任务为什么没执行

2026-06-22

任务写了、也存盘了,到点却没动静 —— 按顺序查这五处。

先确认任务真的被读到了

改完定时任务表之后没有重载,或者文件存错了位置,都会出现"写了但没跑"。第一步是把当前生效的任务表打印出来,确认它和你以为的一致。

环境变量不是登录环境的

定时任务的执行环境和你登录终端时不一样,路径往往更短,也不会读取登录脚本。任务里用到命令时,尽量写绝对路径,别依赖简写名称能不能找到。

输出没人接就会丢

任务如果有输出而没有任何人接收,很多实现会直接丢弃。排查阶段应当把标准输出和标准错误都定向到一个文件,这样失败才看得见。

时区与重叠

机器的时区决定了"每天几点"到底指什么时候。另外,上一个任务还没跑完下一个又起来,两次执行互相踩,也会表现成"没生效"。

最后查权限

有些任务需要读特定文件或写特定目录,在终端里能跑是因为你的身份有权限,换一个执行身份就未必。这类问题往往只在定时任务里出现。