![从取消共享中获取不同的 PID](https://linux22.com/image/192283/%E4%BB%8E%E5%8F%96%E6%B6%88%E5%85%B1%E4%BA%AB%E4%B8%AD%E8%8E%B7%E5%8F%96%E4%B8%8D%E5%90%8C%E7%9A%84%20PID.png)
以下是名为 的脚本中的一些基本代码test.sh
。
bash -c "sleep 10; echo \$(pidof unshare)" &
sudo unshare --mount --uts --ipc --net --pid --fork /bin/sh -c "
... do stuff ...
sleep 60
" &
PID=$!
当我执行脚本时,第一行后台bash命令识别的进程ID和分配给PID的值是不同的。此外,如果您ps
在脚本中运行 a,我看不到任何一个进程 ID。我猜我错误地传递了取消共享的代码,以使其全部在后台作为单个进程运行?如何获取新命名空间中后台运行进程的实际PID?