기계적 인조 인간

리눅스에서 Pstree 명령

How to use the pstree command: Linux tip

How to use the pstree command: Linux tip

차례:

Anonim

Linux 시스템에서 작업 할 때 때때로 현재 실행중인 프로세스를 찾아야 할 수도 있습니다. 실행중인 프로세스에 대한 정보를 찾는 데 사용할 수있는 많은 명령이 있으며 ps top 이 가장 일반적으로 사용됩니다.

pstree 명령에 대해 이야기하겠습니다. ps 와 비슷하지만 실행중인 프로세스를 나열하는 대신 트리에 표시합니다. 트리와 같은 형식은 프로세스 계층 구조를 표시하고보다 시각적으로 매력적인 출력을 만드는보다 편리한 방법입니다.

pstree 명령을 사용하는 방법

pstree 명령의 일반적인 구문은 다음과 같습니다.

ps

옵션이나 인수없이 호출하면 가장 간단한 형식으로 pstree 는 실행중인 모든 프로세스의 계층 적 트리 구조를 표시합니다.

pstree

systemd─┬─VBoxService───7* ├─accounts-daemon───2* ├─2* ├─atd ├─cron ├─dbus-daemon ├─irqbalance───{irqbalance} ├─2* ├─lvmetad ├─lxcfs───2* ├─networkd-dispat───{networkd-dispat} ├─nginx───2*…

트리의 최상위 / 루트 항목은 모든 시스템 프로세스의 상위 프로세스입니다. 이 예제에서 systemd 는 부팅시 시작하는 첫 번째 프로세스입니다.

pstree 는 동일한 브랜치를 대괄호로 pstree 브랜치 수를 나타내는 정수로 접두사를 pstree 병합합니다. 이것은 출력을보다 읽기 쉽고 시각적으로 매력적으로 만듭니다.

아래는 대괄호 사용 방법을 보여주는 예입니다.

├─2*

다음과 같습니다:

├─agetty ├─agetty

동일한 브랜치의 병합을 비활성화하려면 -c 옵션을 사용하십시오.

pstree -c

프로세스의 스레드는 상위 프로세스 아래에 표시되고 중괄호 안에 프로세스 이름을 사용하여 표시됩니다. 예를 들면 다음과 같습니다.

├─lxcfs───2*

전체 스레드 이름을 표시하려면 -t 옵션을 사용하십시오. 스레드를 숨기고 프로세스 만 표시하려면 -T 옵션을 사용하십시오.

일반적으로 pstree 는 화면에 맞지 않는 여러 줄의 출력을 표시합니다. 한 번에 한 페이지 씩 출력을 보려면 less 명령으로 파이프하십시오.

pstree | less

사용자 이름이 인수로 제공되면 pstree 는 해당 사용자가 소유 한 프로세스 만 표시합니다. 예를 들어 다음 명령은“linuxize”라는 사용자가 시작한 프로세스 만 표시합니다.

pstree linuxize

PID가 인수로 지정되면 pstree 는 주어진 프로세스를 가진 트리를 트리의 루트로 표시합니다. 예를 들면 다음과 같습니다.

pstree 1943

sshd───bash───pstree

지정된 프로세스의 상위 프로세스를 표시하려면 -s 옵션과 프로세스 PID를 차례로 사용하십시오.

pstree -s 1943

systemd───sshd───sshd───bash───pstree

PID 및 PGID 표시

일반적으로 pstree 명령을 실행할 때 사용자가 찾고있는 가장 중요한 정보는 프로세스 ID입니다. 예를 들어 PID를 알면 오작동 프로세스를 종료 할 수 있습니다.

-p 옵션은 pstree 에 PID를 표시하도록 지시합니다.

pstree -p

PID는 각 프로세스 또는 스레드 후 괄호 안에 표시됩니다.

systemd(1)─┬─VBoxService(955)─┬─{VBoxService}(956) │ ├─{VBoxService}(957) │ ├─{VBoxService}(958) │ ├─{VBoxService}(959) │ ├─{VBoxService}(960) │ ├─{VBoxService}(961) │ └─{VBoxService}(962)…

기본적으로 pstree 는 이름으로 동일한 상위를 가진 프로세스를 정렬합니다. -n 옵션은 pstree 에 숫자 정렬을 사용하도록 지시합니다 (예: PID를 기준으로 정렬).

pstree -pn

프로세스 그룹 ID 또는 PGID는 프로세스 그룹의 첫 번째 구성원의 프로세스 ID입니다. PGID를 보려면 -g 옵션을 사용하십시오.

pstree -g

PID는 또한 각 프로세스 또는 스레드 후 괄호 안에 표시됩니다.

systemd(1)─┬─VBoxService(954)─┬─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ └─{VBoxService}(954)…

PID 또는 PGID가 표시되면 병합이 암시 적으로 비활성화됩니다.

명령 줄 인수 표시

명령 줄 인수로 지정된 구성 옵션으로 일부 프로그램을 호출 할 수 있습니다.

기본적으로 pstree 는 실행중인 프로세스에 대한 명령 행 인수를 표시하지 않습니다. 프로세스가 시작된 방법을 보려면 -a 옵션과 함께 명령을 사용하십시오.

pstree -a

… ├─agetty -o -p -- \\u --keep-baud 115200, 38400, 9600 ttyS0 vt220 ├─agetty -o -p -- \\u --noclear tty1 linux…

강조 표시

pstree 를 사용하면 더 나은 시각적 표현을 위해 프로세스를 강조 할 수도 있습니다.

-h 옵션은 pstree 에게 현재 프로세스와 모든 조상을 강조 표시하도록 지시합니다.

pstree -h

특정 프로세스를 강조 표시하려면 -H 옵션 다음에 프로세스 ID를 사용하십시오.

pstree -H PID_NUMBER

강조 표시가 지원되지 않으면 명령이 오류와 함께 종료됩니다.

결론

pstree 명령은 실행중인 프로세스를 트리 구조 형식으로 표시합니다.

사용 가능한 모든 pstree 옵션에 대한 정보를 보려면 터미널에 man pstree 를 입력하십시오.

ps 터미널