对于长期问题的道歉,但我需要尽可能具体。寻找启动Raspberry Pi/Linux的启动时间
我正在创建一个项目,允许我使用遥控器控制摄像头的功能。这个项目是从一个Python程序运行的,并将其输出输出到另一个程序chdkptp(这是允许我控制相机的程序)。前一阵子,我试图弄清楚如何让这个项目在启动时启动(这样我就可以插入我的Raspberry Pi,并且无需桌面就可以正常工作)。我尝试了不同的东西(如添加我想rc.local文件等命令),但最终将自动启动,以
~/.config/autostart
,这是什么我做了该文件的内部:
[Desktop Entry]
Encoding=UTF-8
Name=Terminal autostart
Comment=Start a terminal and boot remote_function.py piped into chdkptp.sh
Exec=/usr/bin/lxterm -e 'cd chdkptp-r735 && ./remote_function.py|./chdkptp.sh'
基本上,这打开lxterm并执行我需要启动我的python程序,它的输出管道chdkptp命令,这个工程。
但我的问题是这样的: 我相信我可以在不同的位置不小心开始了我的Python程序,而试图找出我需要做,因为我的Python程序启动后两次。我知道这一点,因为当程序启动并运行时,我有一个LED闪光灯,但它闪烁两次,我无法弄清楚我的程序在哪里启动。我该如何解决这个问题?
我可能已经有一个答案,但不知道这意味着什么......我输入这个命令由有人建议:
ps -ax | grep 'remote_function.py'
,并得到这样的响应:
875 ? S 0:00 xterm -class UXTerm -title uxterm -u8 -e cd chdkptp-r735 && ./remote_function.py|./chdkptp.sh
1026 pts/0 Ss+ 0:00 bash -c cd chdkptp-r735 && ./remote_function.py|./chdkptp.sh
1028 pts/0 S+ 0:00 python ./remote_function.py
2169 pts/1 S+ 0:00 grep --color=auto remote_function.py
是这个答案?如果是这样,那究竟是什么意思?在我的python程序开始时,它与shebang有什么关系?谈到这一点,我是一个新手。如果那不是答案,我该如何去寻找我的程序在启动时启动的其他位置?
的家当是这样的,以供参考:
#!/usr/bin/env python
首先,我想问一下明显的问题。有没有什么办法可以让您的编程成为LED闪烁的罪魁祸首?其次,您是否检查过PID列表以查看是否有两个程序正在运行? – Zak
@Zak我已经测试过简单地执行python程序而不是启动时,当我这样做时,LED只闪烁一次,导致我相信这是一个启动问题。道歉,如果这是一个愚蠢的问题,但我如何去检查PID如果两个实例正在运行? – smartzer
你可以使用'top' - 我个人使用'htop',因为它更加简单:'sudo apt-get install htop'然后发出命令'htop' - 你可以按进程名称.. – Zak