【发布时间】:2019-07-12 17:44:02
【问题描述】:
不确定我做错了什么,无论是代码、目录还是其他问题。请帮忙!
from crontab import CronTab
my_cron = CronTab(user='bgoldberg')
job = my_cron.new(command='python /Users/bgoldberg/PythonScripts/FunStuff/writeDate.py')
job.minute.every(1)
my_cron.write()
这是 writeDate.py 脚本:
import datetime
with open('dateInfo.txt','a') as outFile:
outFile.write('\n' + str(datetime.datetime.now()))
writeDate.py 脚本只是将当前时间戳写入 txt 文件,单独运行时可以正常工作。当我运行 python scheduleCron.py 时,它运行没有错误,但似乎它没有运行 writeDate.py 脚本,因为没有创建 txt 文件。当我输入 crontab -l 时,它正确显示了创建的作业: ***** python /Users/bgoldberg/PythonScripts/FunStuff/writeDate.py
不知道我做错了什么......
【问题讨论】:
-
在 cron 中运行脚本之前是否以某种方式激活了您正在使用的环境?
-
您在哪个目录中检查文本文件?
writeDate.py是在当前目录,还是某个特定目录下创建文本文件? -
谢谢!现在将
'dateinfo.txt更改为绝对路径,看看是否有任何变化。例如with open('/Users/bgoldberg/dateinfo.txt', 'a') as outFile:并查看它是否写入您的主目录。 -
好的,添加了 writeDate.py 内容。它应该在同一目录中创建 txt 文件,我很肯定它没有更新。 @snapcrack 我认为我没有使用环境,只是在我的用户目录中创建了一个 .py 文件并在命令行上运行。
-
@d_kennetz 成功了!更改为绝对路径,现在它出现了。谢谢