How to use the pstree command: Linux tip
Spisu treści:
- Jak korzystać z polecenia
pstree - Pokaż PID i PGID
- Pokaż argumenty wiersza poleceń
- Wyróżnianie
- Wniosek
Podczas pracy na komputerze z systemem Linux czasami może być konieczne sprawdzenie, jakie procesy są obecnie uruchomione. Istnieje wiele poleceń, za pomocą których można znaleźć informacje o uruchomionych procesach, przy czym
ps
i
top
są najczęściej używanymi., porozmawiamy o poleceniu
pstree
. Jest podobny do
ps
, ale zamiast wyświetla listę uruchomionych procesów, pokazuje je w drzewie. Format drzewa jest wygodniejszym sposobem wyświetlania hierarchii procesów i sprawia, że wyniki są bardziej atrakcyjne wizualnie.
Jak korzystać z polecenia
pstree
Ogólna składnia komendy
pstree
jest następująca:
ps
W najprostszej formie, gdy jest wywoływany bez żadnej opcji lub argumentu,
pstree
wyświetla hierarchiczną strukturę drzewa wszystkich działających procesów:
pstree
systemd─┬─VBoxService───7* ├─accounts-daemon───2* ├─2* ├─atd ├─cron ├─dbus-daemon ├─irqbalance───{irqbalance} ├─2* ├─lvmetad ├─lxcfs───2* ├─networkd-dispat───{networkd-dispat} ├─nginx───2*…
Element top / root w drzewie jest procesem nadrzędnym wszystkich procesów systemowych. W tym przykładzie jest to
systemd
, który jest pierwszym procesem rozpoczynającym się przy starcie systemu.
pstree
łączy identyczne gałęzie, umieszczając je w nawiasach kwadratowych i poprzedzając je liczbą całkowitą reprezentującą liczbę gałęzi. To sprawia, że wyniki są bardziej czytelne i atrakcyjne wizualnie.
Poniżej znajduje się przykład pokazujący użycie nawiasów kwadratowych:
├─2*
jest taki sam jak:
├─agetty ├─agetty
Aby wyłączyć scalanie identycznych gałęzi, użyj opcji
-c
:
pstree -c
Wątki procesu są wyświetlane w procesie nadrzędnym i wyświetlane za pomocą nazwy procesu w nawiasach klamrowych. Oto przykład:
├─lxcfs───2*
Użyj opcji
-t
, aby wyświetlić pełne nazwy wątków. Jeśli chcesz ukryć wątki i pokazać tylko procesy, użyj opcji
-T
.
Zazwyczaj
pstree
wyświetla wiele linii wyjściowych, które nie mieszczą się na ekranie. Aby wyświetlić dane wyjściowe pojedynczo, potokuj je do polecenia
less
:
pstree | less
Jeśli nazwa użytkownika jest podana jako argument,
pstree
pokazuje tylko procesy należące do tego użytkownika. Na przykład następujące polecenie pokaże tylko te procesy, które zostały uruchomione przez użytkownika o nazwie „linuxize”:
pstree linuxize
Gdy PID jest określony jako argument,
pstree
wyświetla drzewo z danym procesem jako korzeń drzewa. Oto przykład:
pstree 1943
sshd───bash───pstree
Aby wyświetlić procesy nadrzędne danego procesu, użyj opcji
-s
, a następnie PID procesu:
pstree -s 1943
systemd───sshd───sshd───bash───pstree
Pokaż PID i PGID
Zwykle podczas uruchamiania komendy
pstree
najważniejszą informacją, której szuka użytkownik, jest identyfikator procesu. Na przykład znajomość PID pozwala zabić proces nieprawidłowego działania.
Opcja
-p
nakazuje
pstree
pokazać PID:
pstree -p
Identyfikatory PID są wyświetlane w nawiasach po każdym procesie lub wątku.
systemd(1)─┬─VBoxService(955)─┬─{VBoxService}(956) │ ├─{VBoxService}(957) │ ├─{VBoxService}(958) │ ├─{VBoxService}(959) │ ├─{VBoxService}(960) │ ├─{VBoxService}(961) │ └─{VBoxService}(962)…
Domyślnie
pstree
sortuje procesy z tym samym rodzicem według nazwy. Opcja
-n
mówi
pstree
aby używało sortowania numerycznego, tj. Sortowania według PID:
pstree -pn
Identyfikator grupy procesów lub PGID to identyfikator procesu pierwszego członka grupy procesów. Aby wyświetlić PGID, użyj opcji
-g
:
pstree -g
Identyfikatory PID są również wyświetlane w nawiasach po każdym procesie lub wątku.
systemd(1)─┬─VBoxService(954)─┬─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ └─{VBoxService}(954)…
Gdy wyświetlane są PID lub PGID, scalanie jest domyślnie wyłączone.
Pokaż argumenty wiersza poleceń
Niektóre programy można wywoływać z opcjami konfiguracji określonymi jako argumenty wiersza poleceń.
Domyślnie
pstree
nie wyświetla argumentów wiersza poleceń dla uruchomionych procesów. Aby zobaczyć, jak proces został uruchomiony, użyj polecenia wraz z opcją
-a
:
pstree -a
… ├─agetty -o -p -- \\u --keep-baud 115200, 38400, 9600 ttyS0 vt220 ├─agetty -o -p -- \\u --noclear tty1 linux…
Wyróżnianie
pstree
pozwala również wyróżnić procesy dla lepszej reprezentacji wizualnej.
Opcja
-h
nakazuje
pstree
wyróżnić bieżący proces i wszystkich jego przodków.
pstree -h
Aby podświetlić określony proces, użyj opcji
-H
, a następnie ID procesu:
pstree -H PID_NUMBER
Jeśli podświetlenie nie jest obsługiwane, polecenie zakończy się z błędem.
Wniosek
Komenda
pstree
wyświetla uruchomione procesy w formie struktury drzewa.
Aby uzyskać informacje o wszystkich dostępnych opcjach
pstree
, wpisz
man pstree
w swoim terminalu.
Polecenie CP w systemie Linux (kopiowanie plików)
cp to narzędzie wiersza polecenia do kopiowania plików i katalogów w systemach Unix i Linux.
Polecenie różnicowe w systemie Linux
diff to narzędzie wiersza polecenia, które pozwala porównać dwa pliki linia po linii. Może także porównywać zawartość katalogów.
Polecenie Pwd w systemie Linux (bieżący katalog roboczy)
Bieżący katalog roboczy to katalog, w którym aktualnie pracuje użytkownik. W tym artykule pokażemy, jak określić bieżący katalog roboczy za pomocą polecenia pwd







