Unix / Linuxで特定のユーザーが作成したプロセスを確認する方法


115

Linuxで特定のユーザーまたはユーザーグループによって作成されたプロセスのリストを表示したいpsコマンドを使用して実行できますか、またはこれを達成するための他のコマンドはありますか?


6
ps -u username。ほとんどのコマンドには、で読むことができるマニュアルページがありますman the-command
ステファンシャゼル

回答:


160

特定のユーザーが所有するプロセスのみを表示するには、次のコマンドを使用します。

top -U [username]

[ユーザー名]を必要なユーザー名に置き換えます

psを使用する場合

ps -u [username]

または

 ps -ef | grep <username>

または

ps -efl | grep <username>

拡張リスト用

オプションについては、man psページをご覧ください

別の方法は、pstree wchichがユーザーのプロセスツリーを出力することです

pstree <username or pid>

2
すべての `... | N文字より長い2つのユーザー名がある場合、grep <username> `ソリューションは機能しません。私の場合、Nは6です。
guettli

1
注:でエラーが発生しtop -U [username]top -u [username]代わりに機能しました。Debian9。だから誰かが-U形式でエラーを受け取ったら、小文字を試してください。
グローアイ

2

これを試して

ps -fp $(pgrep -u <username>)

ps -u <username>既存の回答で述べたように(またはps -fu <username>プロセスの詳細が必要な場合)、これはどのように優れていますか?
スティーブンキット

ps -uは完全なプロセスの詳細を提供しませんが、ps -fu <username>は提供します。同意ps -fuが最適なソリューションです
ユーザー939407
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.