【发布时间】:2013-01-03 20:22:10
【问题描述】:
我有一个 shell 脚本,可以启动许多不同的 python 脚本。
shell 脚本导出了许多变量,这些变量又被 python 脚本使用。
这在命令行中运行时运行良好,但在 crontab 中执行时不起作用。
在 cron 日志中,我可以看到 shell 脚本正在运行,但 python 脚本似乎没有运行。
python 脚本能否从 cron 中的 shell 脚本运行?
python 脚本能否从 cron 访问父 shell 脚本设置的环境变量?
【问题讨论】:
-
您能否分享一些 crontab 条目和其他代码的示例,以便我们了解所有内容的调用方式?
-
以cron启动的Shell脚本运行在
crond的环境中,不受shell初始化文件的影响。因此,python 运行所需的一些环境变量可能会丢失。将 stderr 重定向到一个文件,看看会出现什么。 -
看起来,python 脚本甚至没有执行。
-
尝试创建一个单独的条目来简单地执行
python --version或其他操作。如果出错,您可能需要在 crontab 中正确定义$PATH。