【发布时间】:2016-10-20 00:40:58
【问题描述】:
我在第一行有一个带有#!/usr/bin/python 的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'
【问题讨论】:
-
你的 Python 版本实际上是在那个路径上吗?请改用
#!/usr/bin/env python- 无论系统设置如何,这都应该更好地获得正确的路径。另外,尝试使用./myScp.py执行文件,因为这就是 cron 本质上要做的事情。 -
很明显错误是找不到其他文件。那个文件在吗?您是否确保它正在寻找正确的路径?
-
是的。我用 python myscp.py 运行脚本一切正常。
-
如何填写
dn2?./指的是当前目录,我很肯定你认为它不是cron实际使用的东西。 -
@favoretti 不使用默认 python 的本地目录??