Comment voir le processus créé par un utilisateur spécifique sous Unix / linux

115

Je souhaite voir la liste des processus créés par un utilisateur ou un groupe d'utilisateurs spécifique sous Linux. Puis-je le faire à l'aide de la pscommande ou existe-t-il une autre commande pour y parvenir?

gaurav VINAYAK shirodkar
la source
6
ps -u username. La plupart des commandes ont une page de manuel avec laquelle vous pouvez lire man the-command.
Stéphane Chazelas

Réponses:

160

Pour afficher uniquement les processus appartenant à un utilisateur spécifique, utilisez la commande suivante:

top -U [username]

Remplacez le [nom d'utilisateur] par le nom d'utilisateur requis

Si vous voulez utiliser ps alors

ps -u [username]

OU

 ps -ef | grep <username>

OU

ps -efl | grep <username>

pour la liste étendue

Consultez la page man ps pour les options

Une autre alternative consiste à utiliser pstree wchich pour imprimer l’arbre de processus de l’utilisateur

pstree <username or pid>
Stormvirux
la source
2
Tous `... | Les solutions grep <nom d'utilisateur> `ne fonctionnent pas si vous avez deux noms d'utilisateur plus longs que N caractères. Dans mon cas, N a 6 ans.
guettli
1
Remarque: j'ai une erreur pour top -U [username]et top -u [username]travaille pour moi à la place. Debian 9. Donc, si quelqu'un d'autre obtient une erreur avec le formulaire -U, essayez en minuscule.
Gloweye
2

essaye celui-là

ps -fp $(pgrep -u <username>)
utilisateur939407
la source
Comment est-ce meilleur que ps -u <username>, comme mentionné dans la réponse existante (ou ps -fu <username>si vous voulez des détails sur le processus)?
Stephen Kitt
ps -u ne fournit pas tous les détails du processus, mais ps -fu <nom d'utilisateur> en fournit. Ps -fu est la meilleure solution
utilisateur939407 le