linux - 如何在脚本中捕获正在运行的进程的 pid
问题描述
我使用 Linux shell 脚本已经有一段时间了。我遇到了无法捕获前台进程的pid的情况。在我的 shell 脚本中,
cfile="path/to/executable/C++/program"
$cfile
pid=$pidof c++ file
echo $pid > text file
但是我的 c++ 文件包含一个不会停止的 while 循环。因此,在读取 echo $$ 行之前,我的 cpp 文件一直在运行,因此我无法将该 c++ 文件的 pid 捕获到另一个文件中。如果我使用 $! 作为后台文件运行它,我可以捕获并存储它,但为什么它不适用于前台进程?我知道我们可以使用ps, pidof
命令来了解 pid,但我想将该 pid 存储到 shell 脚本中的另一个文件中。
谢谢
解决方案
推荐阅读
- react-native - Stack Navigator 不显示屏幕
- docker - 从 docker 容器端口转发到我的本地桌面(容器 --> 远程主机 --> 本地桌面)
- docker - 在 docker 中构建 php 事件扩展失败:php_sockets_le_socket:找不到符号
- machine-learning - 存在虚拟变量时如何确定BP网络中隐藏层的节点数
- objective-c - Mojave 上的 NSProgressIndictor 问题
- c# - 试图以窗口服务器上的访问权限禁止的方式访问套接字
- vulkan - Vulkan 是否有等效的 API 来执行 cuEventRecord 和 cuEventQuery?
- dynamics-crm - 从另一方收到不安全或不正确安全的故障。故障代码和细节见内部FaultException
- blockchain - Corda 节点因以下错误而关闭
- sqlite - 在 sqlite 中组合表