在cron中使用python脚本

2024-09-28 17:02:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python脚本,第一行是#!/usr/bin/python。我可以使用python myScp.py.从CLI运行它

但作为cron脚本的一部分。python脚本无法运行。cron经过测试,运行python脚本并可以写入/tmp/crontest.txt文件在

似乎有一个目录问题。我用os.getcwd().测试了它的正确性……就在cron运行脚本时,它抛出了一个错误。从CLI运行:/usr/bin/python myScp.py会抛出相同的错误。在

Traceback (most recent call last):
  File "/myScp.py", line 31, in <module>
    execfile(dn2 + 'anotherScpt.py')
IOError: [Errno 2] No such file or directory: './anotherScpt.py'

Tags: 文件py目录txt脚本clibinos
2条回答

我们的首选方法是在crontab条目中显式指定工作目录:

0 0  * * * cd /my/project; /opt/python-2.7/bin/python bin/myscript.py

如果出现错误,您的问题是您依赖于位于特定目录中的程序来执行另一个文件。在

当你在程序所在的目录中运行程序时,它可以找到文件——当你(或cron)在该目录外运行它时,它找不到该文件。您需要将文件放在脚本可以找到的地方,使用绝对路径,或者在程序中找到脚本的位置。在

相关问题 更多 >