![顶部的 PID 与 $$ 的不同吗?](https://linux22.com/image/34784/%E9%A1%B6%E9%83%A8%E7%9A%84%20PID%20%E4%B8%8E%20%24%24%20%E7%9A%84%E4%B8%8D%E5%90%8C%E5%90%97%EF%BC%9F.png)
我一直在做我的以下工作。
#!/bin/sh
NO_START=1
STEP_SIZE=1
NO_END=100
DATE_STR=$(date +%m%d_%H%M%S)
RUN_DIR=./$DATE_STR
mkdir $RUN_DIR
echo PID = $$. See $RUN_DIR/$$.log for outputs and errors.
log_file=$RUN_DIR/$$.log; exec > $log_file 2>&1; date
for i in `seq $NO_START $STEP_SIZE $NO_END`
do
./c/anExternalCProgram $RUN_DIR
done
我今天注意到回显的 PID 与 中显示的不同top
。为什么会这样呢?
答案1
要对此进行调试,请top
选择f字段并PPID
通过将光标移动到此处并按 来打开Space。您可能需要取消选择其他字段之一 ( VIRT
),以便实际看到该父进程 ID。
使用 ,PPID
您应该能够知道哪个程序调用了该 shell,它可能是您程序的 PID,并且您实际上正在查看top
.