我试图在运行在Synology上运行Ubuntu 18的VM上运行简单的python脚本。 python脚本仅在文件中打印日期和时间,因此我可以检查其是否运行。看起来像这样:
from datetime import datetime
with open('file.txt','a') as file:
file.write('Recorded at: %s\n' % datetime.now())
我做了一个像这样的cronjob:
* * * * * /home/anaconda3/bin/python3.7 /home/Documents/crontest.py
我尝试了许多变化。例如,不编写3.7,而只是编写“ python”。我尝试了默认的python路径/usr/bin/python3.7。
此外,我尝试将shebang#!/ home / anaconda / bin / python3.7广告添加到脚本中,并在cronjob中省略了路径。
感觉像我在这里缺少基本内容。我尝试了Stack和其他论坛上发布的许多选项,但这些选项似乎都无法解决我的问题。
答案 0 :(得分:1)
在运行cronjobs时,不允许在python脚本中使用相对链接。所以当我这样写的时候它就起作用了:
from datetime import datetime
with open('/home/Documents/file.txt','a') as file:
file.write('Recorded at: %s\n' % datetime.now())
此外,我使用了错误的python路径。我写了/python3.6而不是通过输入
找到的/ python3。which python3
在终端中。