これを行うスクリプトがありますps -o comm= -p $PPID
。
これが親プロセス名を取得すると説明します。
マンページでは、カスタム-o
フォーマット、comm
コマンド、-p
特定のPIDに応じたプロセス選択を意味することがわかりました。この場合、$PPID
親PIDを意味します。
- どういう意味ですか
comm= -p $PPID
? - このコマンドはどのように機能しますか?
答え1
-o comm=
これは、ユーザー出力がコマンド名だけでなければならず、列ヘッダーがあってはならないことを意味します。たとえば、これにより-o comm=COMMAND
列ヘッダーが印刷されますCOMMAND
。$ ps -o comm= -p $PPID xterm $ ps -o comm=COMMAND -p $PPID COMMAND xterm
-p $PPID
特定の親プロセスに対してを選択しますPID
。PPID
これは-o comm= -p $PPID
、2つの別々のオプションがあることを意味します。
したがって、あなたのコマンドはデフォルトで名前で親プロセスの名前を提供しますPPID
。
たとえば、ブートすると、tmux
PIDはPID
1632です。それでは、bash
各ウィンドウでPPIDは1632ですが、独自のPIDを持ついくつかを開始します。
詳細をご覧ください。PIDとPPIDとは何ですか?
わかりませんが、親コマンド名を決定することをお勧めps
します。/proc/$PPID/comm
私の場合、このコマンドを実行すると、以下を使用せずに親プロセスの名前が提供されますps
。
$ cat /proc/$PPID/comm
tmux
$ cat /proc/1632/comm
tmux