我遇到问题让我的crontab运行我将以下行添加到我的crontab -e但它无法启动。如果我手动运行它,该命令运行正常。
0 */3 * * * cd /home/sam/p/ && /usr/bin/python3.5 start.py
没有收到任何错误消息,当我为它运行top或grep时看不到该过程。
答案 0 :(得分:0)
通常会发生这种情况,因为cron环境与您自己的环境不同。确保您的start.py
脚本使用任何引用文件或外部脚本的完整路径。确保您的start.py
脚本不依赖于shell中的环境变量,但可能不依赖于。尝试将cron输出传递给mail命令,这样你就可以看到它在做什么,如下所示:
0 */3 * * * cd /home/sam/p/ && /usr/bin/python3.5 start.py | mail -s "cron output" myself@example.com
答案 1 :(得分:0)
解决此问题的一种更简单方法是编写包装器shell脚本并将输出发送到日志文件。
python_start_cron.sh
醇>
#!/bin/bash cd /home/sam/p/ && /usr/bin/python3.5 start.py
0 */3 * * * python_start_cron.sh >/tmp/python_start_cron.log 2>&1
执行cron后,检查日志文件的内容以确定问题的原因。