웹사이트 검색

Linux ps 명령 - 20가지 실제 사례


Process Status의 줄임말인 ps 명령은 Linux 시스템에서 실행 중인 프로세스와 관련된 정보를 표시하거나 보는 데 사용되는 명령줄 유틸리티입니다. 우리 모두 알다시피 Linux는 멀티태스킹 및 멀티프로세싱 시스템입니다. 따라서 여러 프로세스가 서로 영향을 주지 않고 동시에 실행할 수 있습니다. ps 명령은 PID 및 기타 속성과 함께 현재 실행 중인 프로세스를 나열합니다. 이 가이드에서는 ps 명령 사용법에 중점을 둘 것입니다. /proc 파일 시스템에 있는 가상 파일에서 프로세스에 대한 정보를 검색합니다.

인수가 없는 ps 명령

인수가 없는 ps 명령은 현재 쉘에서 실행 중인 프로세스를 나열합니다.

ps

실행 중인 모든 프로세스를 다른 형식으로 보기

터미널과 관련된 프로세스 보기

터미널과 연결되지 않은 프로세스 보기

현재 실행 중인 모든 프로세스 표시

모든 현재 프로세스를 보려면 다음을 실행하십시오.

ps -ax

모든 프로세스를 BSD 형식으로 표시

프로세스를 BSD 형식으로 표시하려면 다음을 실행하십시오.

ps au 

또는

ps aux

전체 형식 나열을 수행하려면

전체 형식 목록 실행을 보려면

ps -ef 

또는

ps -eF

사용자에 따라 프로세스 필터링

특정 사용자와 관련된 프로세스를 나열하려면 다음과 같이 -u 플래그를 사용하십시오.

ps -u user

예를 들어

ps -u jamie

스레드 프로세스로 프로세스 필터링

특정 프로세스의 스레드를 알고 싶다면 -L플래그 다음에 PID를 사용하십시오. 예를 들어

ps -L 4264

루트로 실행 중인 모든 프로세스 표시

경우에 따라 루트 사용자가 실행하는 모든 프로세스를 표시해야 할 수 있습니다. 이 실행을 달성하려면

ps -U root -u root

디스플레이 그룹 프로세스

특정 그룹과 관련된 모든 프로세스를 나열하려면 다음을 실행하십시오.

ps -fG group_name

또는

ps -fG groupID

예를 들어

ps -fG root

프로세스 PID 검색

일반적으로 프로세스에 대한 PID를 모를 가능성이 있습니다. 다음을 실행하여 프로세스의 PID를 검색할 수 있습니다.

ps -C process_name

예를 들어

ps -C bash

PID로 프로세스 나열

표시된 것처럼 PID별로 프로세스를 표시할 수 있습니다.

ps -fp PID

예를 들어

ps -fp 1294

트리 다이어그램에 프로세스 계층 구조를 표시하려면

일반적으로 대부분의 프로세스는 상위 프로세스에서 분기됩니다. 이 부모-자녀 관계를 알면 도움이 될 수 있습니다. 아래 명령은 이름이 apache2인 프로세스를 검색합니다.

ps -f --forest -C bash

상위 프로세스의 하위 프로세스 표시

예를 들어 Apache에 속한 모든 분기된 프로세스를 표시하려면 다음을 실행하십시오.

ps -o pid,uname,comm -C bash
ps --ppid PID no.

예를 들어

ps --ppid 1294

프로세스 스레드 표시

ps 명령을 사용하여 프로세스와 함께 스레드를 볼 수 있습니다. 아래 명령은 PID가 pid_no인 프로세스가 소유한 모든 스레드를 표시합니다.

ps -p pid_no -L

예를 들어

ps -p 1294 -L 

선택한 열 목록 표시

ps 명령을 사용하여 필요한 열만 표시할 수 있습니다. 예를 들어 ,

ps -e -o pid,uname,pcpu,pmem,comm

열 레이블 이름 바꾸기

열 레이블의 이름을 바꾸려면 아래 명령을 실행하십시오.

 ps -e -o pid=PID,uname=USERNAME,pcpu=CPU_USAGE,pmem=%MEM,comm=COMMAND

프로세스 경과 시간 표시

경과 시간은 프로세스가 실행된 시간을 나타냅니다.

ps -e -o pid,comm,etime

grep과 함께 ps 명령 사용

ps 명령을 grep 명령과 함께 사용하여 특정 프로세스를 검색할 수 있습니다. 예를 들어

ps -ef  | grep systemd