【问题标题】:Child script execution in crontabcrontab 中的子脚本执行
【发布时间】:2013-01-03 20:22:10
【问题描述】:

我有一个 shell 脚本,可以启动许多不同的 python 脚本。

shell 脚本导出了许多变量,这些变量又被 python 脚本使用。

这在命令行中运行时运行良好,但在 crontab 中执行时不起作用。

在 cron 日志中,我可以看到 shell 脚本正在运行,但 python 脚本似乎没有运行。

  1. python 脚本能否从 cron 中的 shell 脚本运行?

  2. python 脚本能否从 cron 访问父 shell 脚本设置的环境变量?

【问题讨论】:

  • 您能否分享一些 crontab 条目和其他代码的示例,以便我们了解所有内容的调用方式?
  • 以cron启动的Shell脚本运行在crond的环境中,不受shell初始化文件的影响。因此,python 运行所需的一些环境变量可能会丢失。将 stderr 重定向到一个文件,看看会出现什么。
  • 看起来,python 脚本甚至没有执行。
  • 尝试创建一个单独的条目来简单地执行python --version 或其他操作。如果出错,您可能需要在 crontab 中正确定义 $PATH

标签: python shell cron


【解决方案1】:

如果您遇到问题,最好在从 cron 调用的任何脚本中使用命令的完整路径,以避免在调用 cron 的基本环境中出现 PATH 和环境变量问题。

【讨论】:

    猜你喜欢
    • 2020-03-16
    • 2013-04-19
    • 2020-05-30
    • 2017-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-02
    相关资源
    最近更新 更多