Cara melihat proses yang dibuat oleh pengguna tertentu di Unix / linux

115

Saya ingin melihat daftar proses yang dibuat oleh pengguna atau kelompok pengguna tertentu di Linux Dapatkah saya melakukannya dengan menggunakan psperintah atau adakah perintah lain untuk mencapai ini?

gaurav VINAYAK shirodkar
sumber
6
ps -u username. Sebagian besar perintah memiliki halaman manual yang dapat Anda baca man the-command.
Stéphane Chazelas

Jawaban:

160

Untuk hanya melihat proses yang dimiliki oleh pengguna tertentu, gunakan perintah berikut:

top -U [username]

Ganti [nama pengguna] dengan nama pengguna yang diperlukan

Jika Anda ingin menggunakan ps maka

ps -u [username]

ATAU

 ps -ef | grep <username>

ATAU

ps -efl | grep <username>

untuk daftar yang diperluas

Lihat halaman man ps untuk opsi

Alternatif lain adalah dengan menggunakan pstree yang mencetak pohon proses pengguna

pstree <username or pid>
Stormvirux
sumber
2
Semua `... | solusi grep <username> `tidak berfungsi jika Anda memiliki dua nama pengguna yang lebih panjang dari karakter N. Dalam kasus saya N adalah 6.
guettli
1
Catatan: Saya mendapat kesalahan untuk top -U [username], dan top -u [username]sebaliknya bekerja untuk saya. Debian 9. Jadi, jika orang lain mendapatkan kesalahan dengan formulir -U, coba huruf kecil.
Gloweye
2

coba yang ini

ps -fp $(pgrep -u <username>)
pengguna939407
sumber
Bagaimana ini lebih baik daripada ps -u <username>, sebagaimana disebutkan dalam jawaban yang ada (atau ps -fu <username>jika Anda ingin detail proses)?
Stephen Kitt
ps -u tidak memberikan detail proses lengkap, tetapi ps -fu <username> tidak. Setuju ps -fu adalah solusi terbaik
user939407