時にはAIXに対応する製品を探します。proctree
注文する
すべての子供たちに見せてそしてすべての祖先PID値を指定すると、トラブルシューティングに役立つ場合があります。たとえば、以下はマニュアルページから抜粋したものです。
To display the ancestors and children of process 12312,
including children of process 0, enter:
proctree -a 12312
The output of this command might look like this:
1 /etc/init
4954 /usr/sbin/srcmstr
7224 /usr/sbin/inetd
5958 telnetd -a
13212 -sh
14724 ./proctree -a 13212
私が時々使用するもう一つの便利な形式は、proctree $$
現在の端末とsshを介してログインしているのか、コンソールを介してログインしたのかを示すことです。
明確にすると、私は探しているものではありませんスクリプトこれはLinuxでこれをエミュレートしますが、実際の同等の機能がすでに存在する可能性があります。
Linuxでは、pstree
指定されたPIDのすべての子プロセスが表示されますが、ルートは常に指定されたPIDです(PIDが指定されていない場合はinitであり、ツリー全体が表示されます)。
このようなこともps --forest -u "$username"
役に立ちません。これは、特定のユーザーのプロセスのみを表示し、特定のツリーのプロセスだけでなくすべてのプロセスを表示するためです。
答え1
pstree -s 12312
形式があまり良くない場合でも、欲しいものを提供すると思います。
答え2
私のコメントをより良い形式の回答として再投稿します。
マッソサ、マニュアルページで何かを完全に見逃したようです。
pstree -pas PID
親プロセスも表示され、ツリー形式でプロセスのPIDが含まれます。
一例:
[doktor5000@Mageia5]─[20:06:48]─[~] pstree -pas $$
systemd,1
└─konsole,9515
└─bash,9517
└─pstree,9595 -pas 9517
[doktor5000@Mageia5]─[20:06:49]─[~]