这是我的 crontab 文件的样子:
* * * * * root /usr/bin/python /root/test.py >> /root/classwatch.log 2>&1
这是我的 python 脚本的样子:
#!/usr/bin/python
print "hello"
cronjob 创建日志文件。但它是空的。我也很确定 python 文件没有被执行。
感谢任何帮助!过去 4 个小时我一直在玩它,但运气不好。
最佳答案
有两种创建 crontab 的方法——每个用户或全局。对于全局 crontab (/etc/crontab),您指定用户,按照:
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
对于您不需要的用户 crontab,按照:
aj@wherever:~$ crontab -l
0 * * * * /home/aj/bin/update-foobar
通过#! 运行 python 脚本表示法,您只需使脚本可执行 (chmod 755/root/test.py),然后直接调用它,例如:
/root/test.py
如果你不想这样做,你可以通过 python 解释器手动运行它,比如:
/usr/bin/python /root/test.py
这假设您正在运行的用户(即/etc/crontab 中的用户,或您正在运行 crontab -e 的用户)有权查看 python 脚本——/root 可能无法正常访问用户,例如。
通过添加以下内容,您可以很好地了解您的脚本是否正在执行:
import time
time.sleep(20) # pause for 20 seconds
然后用“top”或“ps aux”或“pstree”检查 python 是否真的在运行。
关于python - 在 debian 上通过 crontab 执行 python 脚本真是太疯狂了!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/712124/