Python脚本在启动时执行时不写入文件

sjo*_*190 4 python loops

我正在尝试创建一个将写入文件的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()
Run Code Online (Sandbox Code Playgroud)

/etc/rc.local文件:

/usr/bin/python /home/pi/loop.py &
Run Code Online (Sandbox Code Playgroud)

loop.py和loop.txt都具有读/写/执行访问权限.

gar*_*epy 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()
Run Code Online (Sandbox Code Playgroud)