我有一个检查网络连接的脚本。我在执行reboot命令之前写入文本文件时遇到问题。
在执行之前的脚本之前先运行reboot命令。
这是我脚本的一部分。
else:
text_file.write(trigger)
time.sleep(1)
os.system("/sbin/shutdown -r now")
我尝试在执行之前添加一个延迟,但它仍然先运行。
它不会写入文本文件并直接转到
os.system("/sbin/shutdown -r now")
命令
如何在重新启动文本文件之前先将其写入文本文件。这是我的剧本。
if internet_on():
with open("reboot_checker.txt", "r+") as text_file:
for line in text_file:
if trigger in line:
break
else:
text_file.write(trigger)
time.sleep(1)
os.system("/sbin/shutdown -r now")
# print("REBOOTING")
else:
with open("reboot_checker.txt", "r+") as text_file:
for line in text_file:
if trigger in line:
deleteLine()
else:
pass
答案 0 :(得分:4)
您仍然在文件上下文管理器(with open("...") as text_file
部分)内发出重新启动。您写入的文件尚未关闭,因此尚未刷新。在发出命令之前执行text_file.flush()
或在上下文管理器之外发出重新启动。