Python脚本在启动时运行,然后在结束时重新启动 - 如何重新获得控制权?

时间:2017-06-15 17:41:46

标签: python python-3.x raspberry-pi raspberry-pi3

我犯了一个可怕的错误,正在寻找你的帮助!

我已经设置了我的覆盆子pi,通过编辑rc.local文件在启动时运行python脚本。这很好,除了我已经编写了我的脚本,以便在退出时重新启动raspberry pi。现在我陷入无限循环,我无法编辑任何东西。每次我的脚本结束时重新启动pi并重新开始!

我的程序使用Pygame作为GUI,我有一个运行随附的NOOBS操作系统的Raspberry Pi 3。如果您需要更多信息,请询问。

任何有助于停止我的脚本以帮助我访问pi而不会丢失任何数据的帮助将非常感激。

编辑 - 多么棒的社区。感谢大家分享您的知识和时间。我有点恐慌,你们都很快得到了我的帮助。如果你正在阅读这篇文章,因为你处于类似的困境,我发现Ben的答案是最快捷,最简单的解决方案,但如果这对你不起作用,我认为FrostedCookies'想法将是下一个尝试。

4 个答案:

答案 0 :(得分:8)

最简单的方法可能是从你的Pi中取出SD卡,将SD文件系统安装到运行linux的另一台计算机上,然后从那里编辑你的rc.local脚本以删除无限启动循环。您也可以通过这种方式备份数据。

答案 1 :(得分:5)

我不确定这是否可行(我现在没有Pi),但如果在脚本运行时无法正常访问终端,请尝试使用键盘快捷键Ctrl + Alt + F1打开一个,然后键入sudo pkill python来杀死脚本(这也会杀死你机器上的任何其他python进程)。然后使用终端文本编辑器(可能是vinano)来编辑rc.local文件,这样就不会再发生这种情况了。

答案 2 :(得分:2)

它是Raspberry Pi解决方案而不是Python / unix解决方案,但您可以将SD卡插入另一台计算机,安装它,并修改脚本以停止重启循环。

有关在另一台计算机上编辑Pi的SD卡文件的详细信息,请访问:https://raspberrypi.stackexchange.com/questions/9515/how-to-access-the-rpi-root-ext4-file-system-by-inserting-sd-card-into-a-differen

答案 3 :(得分:0)

我首先将其关闭再打开..

如果它不会帮助

  • ps aux | grep -i python
  • killall python - 你可能需要用python脚本名称调整killall命令,或者除了" python"
  • 之外