如何更改代码以便在重新启动后它可以工作并在终端中可见?

How to change the code so that after the reboot it works and is visible in the terminal?

下面是我的代码。我使用 crontab 来自动启动,但一切都不如我所愿。目标是在启动 raspberry 后,终端会打开,程序会 运行 在里面,这样当你输入“再见”时,程序就会结束(我已经有了)。

import os
import sys
import subprocess
if os.geteuid() == 0:
    while True:
        file = open("here is my file path")
        print(file.read())
        my_input = input("Do you want to close this program? Type bye if yes")
        if my_input== 'bye':
            print("bye")
            break
else:
    subprocess.call(['sudo', 'python3'] + sys.argv)

How to change the code so that after the reboot it works and is visible in the terminal?

使用守护程序服务可能比“cron”更合适。但这并不重要,因为您的脚本会检查用户是否为 root ( geteuid() ),如果不是,则尝试执行 sudo,因此 sudo 只会失败,因为脚本没有权限。如果您的脚本有一个标准用户 uid,并且由 root 执行,那么您必须调用 seteuid(0) 来设置 root

的权限