我正在尝试恢复所有挂起的进程,但我不知道如何检查进程是否被挂起。我试过了,但它没有表明进程是暂停还是运行。
/proc/<pid>/status
如果您使用的是 Linux,您可能会使用 Ipor 的方式 ( ),但一个更便携的解决方案应该适用于大多数 Unix/Unix 之类的操作系统,那就是使用标准命令,正如 Barmar 在评论中已经建议的那样:
ps -o s= -p <pid>
Run Code Online (Sandbox Code Playgroud)
这将显示T
挂起的进程(如果因为被调试而停止)。
使用 pid 检查进程$pid
很简单:
if grep -q "^State.*stopped" /proc/$pid/status; then
echo Process $pid is sleeping
else
echo Process $pid is active
fi
Run Code Online (Sandbox Code Playgroud)