Come vedere il processo creato da un utente specifico in Unix / Linux


115

Voglio vedere un elenco di processi creati da utenti specifici o gruppi di utenti in Linux Posso farlo usando il pscomando o c'è qualche altro comando per raggiungere questo obiettivo?


6
ps -u username. La maggior parte dei comandi ha una pagina di manuale con cui puoi leggere man the-command.
Stéphane Chazelas il

Risposte:


160

Per visualizzare solo i processi di proprietà di un utente specifico, utilizzare il comando seguente:

top -U [username]

Sostituisci il [nome utente] con il nome utente richiesto

Se vuoi usare ps allora

ps -u [username]

O

 ps -ef | grep <username>

O

ps -efl | grep <username>

per l'elenco esteso

Controlla la pagina man ps per le opzioni

Un'altra alternativa è usare pstree che stampa l'albero di processo dell'utente

pstree <username or pid>

2
Tutti `... | Le soluzioni grep <nomeutente> `non funzionano se hai due nomi utente più lunghi di N caratteri. Nel mio caso N è 6.
Guettli,

1
Nota: ho ricevuto un errore top -U [username]e top -u [username]ho invece lavorato per me. Debian 9. Quindi, se qualcun altro riceve un errore con il modulo -U, prova le lettere minuscole.
Gloweye,

2

prova questo

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

In che modo è meglio di ps -u <username>, come indicato nella risposta esistente (o ps -fu <username>se si desidera i dettagli del processo)?
Stephen Kitt,

ps -u non fornisce dettagli completi sul processo, ma ps -fu <nomeutente> lo fa. D'accordo ps -fu è la soluzione migliore
user939407,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.