Como ver o processo criado por usuário específico no Unix / linux

115

Desejo ver a lista de processos criados por um usuário ou grupo de usuários específico no Linux. Posso fazer isso usando o pscomando ou existe algum outro comando para conseguir isso?

gaurav VINAYAK shirodkar
fonte
6
ps -u username. A maioria dos comandos possui uma página de manual com a qual você pode ler man the-command.
Stéphane Chazelas

Respostas:

160

Para visualizar apenas os processos pertencentes a um usuário específico, use o seguinte comando:

top -U [username]

Substitua o [nome de usuário] pelo nome de usuário necessário

Se você quiser usar ps, então

ps -u [username]

OU

 ps -ef | grep <username>

OU

ps -efl | grep <username>

para a lista estendida

Confira a página man ps para opções

Outra alternativa é usar pstree, que imprime a árvore de processos do usuário

pstree <username or pid>
Stormvirux
fonte
2
Todos os ... | As soluções grep <username> `não funcionam se você tiver dois nomes de usuário com mais de N caracteres. No meu caso N é 6.
guettli
11
Nota: recebi um erro top -U [username]e top -u [username]trabalhei para mim. Debian 9. Portanto, se alguém mais receber um erro com o formulário -U, tente a letra minúscula.
Gloweye
2

tente este

ps -fp $(pgrep -u <username>)
user939407
fonte
Como isso é melhor do que ps -u <username>, conforme mencionado na resposta existente (ou ps -fu <username>se você quiser detalhes do processo)?
Stephen Kitt
O ps -u não fornece detalhes completos do processo, mas o ps -fu <username> fornece. Concordo ps -fu é a melhor solução
#