유닉스 / 리눅스에서 특정 사용자가 생성 한 프로세스를 보는 방법


115

Linux에서 특정 사용자 또는 사용자 그룹이 만든 프로세스 목록을보고 싶습니다. ps명령 을 사용하여 수행 할 수 있습니까 ? 아니면 다른 명령이 있습니까?


6
ps -u username. 대부분의 명령에는으로 읽을 수있는 매뉴얼 페이지가 있습니다 man the-command.
Stéphane Chazelas

답변:


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
모든`... | grep <username>`솔루션은 N 문자보다 긴 두 개의 사용자 이름이 있으면 작동하지 않습니다. 제 경우에는 N은 6입니다.
guettli

1
참고 : 나는에 대한 오류가 발생했습니다 top -U [username], 그리고 top -u [username]대신 나를 위해 일했다. 데비안 9. 다른 누군가가 -U 형식으로 에러를 받으면, 소문자를 사용해보십시오.
글로우 아이

2

이거 한번 해봐

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

ps -u <username>기존 답변에서 언급했거나 ps -fu <username>프로세스 세부 정보를 원할 때보 다 낫습니다 .
Stephen Kitt

ps -u는 전체 프로세스 세부 사항을 제공하지 않지만 ps -fu <username>은 제공합니다. 동의 ps -fu는 최고의 솔루션입니다
user939407
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.