在使用crontab时遇到一些问题,我对bash没有经验。在
我的桌面上有一个基本的python脚本。在
#I'm not sure if I need to shebang here.
with open('hi.txt', 'a') as file:
file.write("Woo")
我尝试过在crontab中导出环境变量,我知道我根据邮件文件夹中的反馈将crontab指向正确的目录。我相信我的问题是我不知道如何告诉解释器使用anaconda3执行文件。在
Crontab公司:
^{pr2}$我之前在我的邮件文件夹中发现了这些错误,这让我相信问题是我不知道如何告诉bash使用anaconda3执行文件:
/bin/sh: /Users/josephwright/Desktop/cron/print.py: /usr/local/env: bad interpreter: No such file or directory
或者
/Users/josephwright/Desktop/cron/print.py: line 2: syntax error near unexpected token `('
/Users/josephwright/Desktop/cron/print.py: line 2: `with open('hi.txt', 'a') as file:'
有了上面的crontab,我的邮件文件夹中不再有错误,但是我不能在与python脚本相同的目录中获得文本文件的文本输出。如果它没有将日志发送到我的邮件文件夹,我如何查看日志以便将来进行故障排除?在
有谁能帮我指出正确的方向吗? 提前谢谢。在
你真的把Python代码锚定在绝对路径/anaconda3上吗?这是极不可能的。它应该是相对于你的主目录。因此,crontab文件中的
PATH=/anaconda3/bin:...
条目不太可能有任何用处。在shell脚本应该始终有一个
!#
(shebang)行。如果没有这行代码,出于传统兼容性的原因,脚本通常由/bin/sh计算。这就是为什么你得到那些语法错误。在如果您修复了
PATH
定义,那么将调用行更改为如下内容就足够了*/1 * * * * python3 cron/print.py
相关问题 更多 >
编程相关推荐