我试图使用crontab在MacOS上安排一个简单的python脚本。我在这里看到了很多关于其他问题的指导和答案,但仍然无法完成我的任务。事实上,我对终端和类似的东西不太熟悉,但是看起来并不难,所以我希望能解决它。
我采用了两种不同的方法。
第一种方法:
crontab -e,按i键插入并粘贴以下内容:* * * * * /usr/bin/python mypath/ap.py。
crontab -l按预期显示我的cron条目,但是脚本没有发生任何事情(它应该创建一个txt文件)。第二种方法:
* * * * * /usr/bin/python mypath/ap.py >> mypath/MyCronLog.txt 2>&1通过这种方式,
-bash: Applications: command not found或-bash: Applications: command not found我的python脚本位于dekstop上的一个文件夹中(我不知道这是否重要)。
此外,我从终端运行我的python脚本,它运行得非常完美。任何建议都是非常感谢的!
编辑1:我的python脚本的路径如下: /Users/myname/Desktop/ap/ap.py
编辑2:“/opt/anaconda3 3/bin/python”代替"/usr/bin/python“,但没有什么改变。
发布于 2021-03-25 20:03:28
问题似乎在您的python脚本中。我想txt文件是在错误的文件夹中创建的。当cron调用python脚本时,工作目录不是该脚本的目录(请参阅here)。寻找here的解决方案。
编辑:
脚本的行为可能取决于您从其中调用它的目录(不是编写脚本的理想方法)。当您在/Users/myname/Desktop/ap中调用python ap.py时,这可能会导致与从/Users/myname/Desktop调用python ap/ap.py不同的结果。
您可以通过调用这个简短的脚本来验证这一点:
import os
print(os.getcwd())我可以想象,当您从包含的目录调用脚本时,脚本会在cron调用时崩溃。
https://stackoverflow.com/questions/66805719
复制相似问题