我正在尝试获取多个bash进程的进程ID:
./test_run.sh hello echo $$ ./test_run.sh hellos echo $$ ./test_run.sh hello22 echo $$
test_run.sh的定义
echo "run $1"
但它们都返回相同的进程ID,为什么?
答案 0 :(得分:2)
$$
返回当前shell进程的PID。要获取刚刚开始的后台进程的PID,请使用$!
。
./test_run.sh hello &
echo $!
./test_run.sh hello &
echo $!