我有一个Python脚本,通过CRON工作两次,触发一个循环运行的警报,当按下物理按钮并调用销毁函数时,警报停止。
到目前为止还不错。现在,我想通过PHP检查该脚本是否正在运行 - 在按下按钮之前但在通过CRON调用之后。我该怎么做?
基于这个问题 - 我尝试了以下方法:
但它似乎没有返回任何值。在终端中调用
使用
到目前为止还不错。现在,我想通过PHP检查该脚本是否正在运行 - 在按下按钮之前但在通过CRON调用之后。我该怎么做?
基于这个问题 - 我尝试了以下方法:
exec("jobs", $pids);
if(!empty($pids)) {
print_r($pids);
}
但它似乎没有返回任何值。在终端中调用
jobs
的效果如预期一样,而直接使用python3 alarm.py &
调用脚本时,它会将作业列为正在运行。使用
exec("ps -A | grep -i $processName | grep -v grep", $pids);
我感觉不起作用,因为进程ID可能会更改,并且在脚本运行之前无法知道。
pgrep -f python /home/pi/Projects/sound.py
直接粘贴到终端中,我会得到以下错误:“pgrep:只能提供一个模式”。在终端中键入pgrep -f python
会正确返回脚本的PID,但由于在运行脚本之前未知PID,所以我有点不知所措... - Michał