B! 38 0 0 0 パイプとか$()とかで生成するサブシェルのIDを取得する方法について。 PID, PPID 関数の場合 サブシェルとして実行された関数内でのほんとのPIDを取得する方法 PIDが初期化されてるプロセスでの$SHELL...について Bash Version 4の場合 Zshの場合 まとめ PID, PPID 通常、スクリプトでもコマンドラインでも、自分のプロセスIDは$$に入っています。 (以下、特記がないものはMac OS X 10.9でBash 3.2.51でやっています。) また、$PPIDには自分の親プロセスのIDが入っています。 なので、 ppid.sh 1 2 #!/usr/bin/env bash echo PPID=$PPID, PID=$$ こんなスクリプトを作って実行すると $ echo PPID=$PPID, PID=$$ PPID=26005
![シェルスクリプトでサブシェルのプロセスIDを取る方法](https://cdn-ak-scissors.b.st-hatena.com/image/square/a2ad5f4f25405ebcc000b16c2f5d65dba35e714c/height=288;version=1;width=512/https%3A%2F%2Fimages-na.ssl-images-amazon.com%2Fimages%2FI%2F51IX5KEikRL._SS200_.jpg)