特定のユーザーアカウントに関連付けられているすべてのプロセスを検索して表示するためにエイリアスを作成しました。デフォルトでは、リスト全体ではなくエイリアスと親プロセスのみを表示したいと思います。パイプする必要があることはわかりますが、それ以上はわかりません。
例:
ps -u *someuser* | grep <parent process name/PID>
編集#1
これは私が言及したプロセスツリーとはまったく関係ありませんが、関連プロセスを貼り付けることができるようにマニュアルページを開きました。
966 man pidof ---
969 sh -c (cd '/usr/local/share/man' && (echo ".ll 12.8i"; echo ".nr LL 12.8i"; /usr/bin/gunzip -c '/usr/local/share/man/ ---
970 sh -c (cd '/usr/local/share/man' && (echo ".ll 12.8i"; echo ".nr LL 12.8i"; /usr/bin/gunzip -c '/usr/local/share/man/ --- 975 sh -c (cd '/usr/local/share/man' && (echo ".ll 12.8i"; echo ".nr LL 12.8i"; /usr/bin/gunzip -c '/usr/local/share/man/ ---
977 /usr/bin/less -is` how `kill 966` kills all the rest
答え1
Unix コマンドを使用すると、pstree
ツリー構造のプロセス名のリストを取得できます。
はい
$ pstree
init-+-NetworkManager-+-dhclient
| `-2*[{NetworkManager}]
|-abrtd
|-acpid
|-atd
|-auditd-+-audispd-+-sedispatch
| | `-{audispd}
| `-{auditd}
|-autossh---ssh---ssh
|-avahi-daemon---avahi-daemon
|-bonobo-activati---2*[{bonobo-activat}]
|-chrome-+-3*[chrome]
| |-chrome-sandbox---chrome-+-chrome-+-25*[chrome---3*[{chrome}]]
| | | |-4*[chrome---4*[{chrome}]]
| | | `-chrome---6*[{chrome}]
| | `-nacl_helper_boo
| `-31*[{chrome}]
...
...
特定のユーザーに関連するプロセスだけが必要な場合は、ユーザー名を指定できます。
はい
$ pstree saml
autossh---ssh---ssh
bonobo-activati---2*[{bonobo-activat}]
chrome-+-3*[chrome]
|-chrome-sandbox---chrome-+-chrome-+-25*[chrome---3*[{chrome}]]
| | |-4*[chrome---4*[{chrome}]]
| | `-chrome---6*[{chrome}]
| `-nacl_helper_boo
`-31*[{chrome}]
clock-applet---{clock-applet}
...
...