![crontab 无法在作业前设置变量](https://linux22.com/image/560232/crontab%20%E6%97%A0%E6%B3%95%E5%9C%A8%E4%BD%9C%E4%B8%9A%E5%89%8D%E8%AE%BE%E7%BD%AE%E5%8F%98%E9%87%8F.png)
我的 crontab 如下所示:
root@slack13x64:~# crontab -l -u dnd
# some variables
SHELL=/bin/bash
PATH=/bin:/usr/bin:/usr/local/bin:/home/dnd/bin
MAILTO=root
# Actual jobs
40 20 * * * /home/dnd/cron_jobs/some_job.sh
55 23 * * Fri /home/dnd/cron_jobs/other_job.py
作业运行几乎正常,因为 crontab 无法设置所有变量:
Sep 1 20:40:01 slack13x64 crond[2325]: failed parsing crontab for user dnd: SHELL=/bin/bash
Sep 1 20:40:01 slack13x64 crond[2325]: failed parsing crontab for user dnd: PATH=/bin:/usr/bin:/usr/local/bin:/home/dnd/bin
Sep 1 20:40:01 slack13x64 crond[2325]: failed parsing crontab for user dnd: MAILTO=root
操作系统:slackware 13 x64,crontab 4.4
问题是我遗漏了什么?设置初始环境变量的支持是否已从 crontab 中删除,或者运行此作业的用户是否应分配给某个组?
答案1
将我的评论移至问题,因为显然这是正确答案!
检查您使用的 cron 版本。您可能有一些奇怪的非 vixie cron,它们不接受相同的设置或参数。