设置树莓派开机后自动打开命令行,并在里面自动执行程序

家住魔仙堡 提交于 2020-03-02 00:46:14

最近用树莓派搞了一个远程开启电脑的应用,想法是树莓派一直开着,电脑正常是关机的,但是有需要的话我可以用用树莓派唤醒电脑,再用Teamviewer远程回来,该干嘛干嘛。但是树莓派也不可能一直不关机,还是要关机之后开机程序能自启动。由于跑的程序也有崩溃的可能,所以最好是用命令行显示打开,以便将来程序即使崩溃了也能看到DEBUG的信息,也好知道这个程序是不是在运行。

网上大神很多,但是找了一圈,基本都是隐式开启的(程序打开之后没有任何提示,只能在进程看到),所以自己参考着:

https://blog.csdn.net/weixin_40973138/article/details/84192345的方法二(感谢原文作者),自己改了下,成功。

方法如下:

1. 进入/home/pi/.config 路径
cd /home/pi/.config

2. 找到autostart 路径,没有就创建一个
mkdir autostart

3. 然后进入autostart 路径
cd autostart

4. 在autostart 中创建一个.desktop 尾缀文件,例如test.desktop
touch test.desktop

5. 该文件中输入:
[Desktop Entry]
Name=PChost
Comment=Python Program
Exec=lxterminal -e sudo python3 /home/pi/Documents/Python/rinf.py
Icon=/home/pi/python_games/4row_black.png
Terminal=false
MultipleArgs=false
Type=Application
Categories=Application;Development;
StartupNotify=true
 

其中Exec那行就是关键。这行是打开了lxterminal,并让命令行执行了 sudo python3 /home/pi/Documents/Python/rinf.py。我这个程序用的点灯的物联网模块,要求root权限,所以加了sudo.

6、重启,连上VNC,可以看到命令行界面已经打开,程序也在里面执行,print的信息也能正常显示了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!