我正在尝试创建一个将写入文件的python循环脚本。
当我在终端中执行脚本时,文件写入没有问题。
我不希望这个脚本在启动时启动,所以我将它放在rc.local文件中。该脚本运行,但它没有将输出写入指定的文件..
我做了一些关于冲洗和非缓冲输出的阅读。 任何人都可以帮助我或指出我正确的方向吗?
当这个脚本完成后,它将使用REST发送文件,但是在我到达那里之前我需要写文件..
剧本:
#!/usr/bin/python -u
while True:
try:
print "This is only a test..."
with open("loop.txt", "a") as loopFile:
loopFile.write("This is only a test...")
loopFile.write('\n')
loopFile.flush()
loopFile.close()
time.sleep(1)
except KeyboardInterrupt:
break
quit()
/etc/rc.local文件:
/usr/bin/python /home/pi/loop.py &
loop.py和loop.txt都具有读/写/执行访问权限。
答案 0 :(得分:5)
在打开文件的语句中添加完整路径名:
#!/usr/bin/python -u
while True:
try:
print "This is only a test..."
with open("/home/users/sj091190/loop.txt", "a") as loopFile:
loopFile.write("This is only a test...")
loopFile.write('\n')
loopFile.flush()
time.sleep(1)
except KeyboardInterrupt:
break
quit()