Wyszukiwanie w witrynie

40 przydatnych przykładów poleceń PS systemu Linux dla początkujących administratorów systemu


Polecenie ps to przydatne narzędzie, które pozwala nam przeglądać ważne informacje o procesie. Proces to po prostu działająca instancja programu. Ilekroć wywołujemy program, tworzone są pewne procesy. Dokładne zrozumienie drzewa procesów jest obowiązkowe, jeśli chcesz mieć pełną kontrolę nad swoją maszyną. W tym miejscu wkracza ps. Jest to jedno z najbardziej przydatnych poleceń terminala w systemie Linux, a jednocześnie oferuje mnóstwo kluczowych informacji. SysAdmins mogą ich używać do znajdowania wadliwych programów lub dokładnego określenia zużycia zasobów. Ten przewodnik zapewni czytelnikom praktyczne wprowadzenie do polecenia ps w systemie Linux.

Praktyczne polecenia PS w systemie Linux do codziennego użytku


Komenda ps to prosty sposób na wyświetlenie wszystkich aktywnych procesów. Jednak polecenie ps drukuje tylko migawkę wybranych procesów. Jeśli chcesz otrzymywać aktualizacje swoich wyborów w czasie rzeczywistym, powinieneś użyć najwyższego polecenia Linuksa lub jednego z jego następców. Sprawdź poniższe przykłady, aby zobaczyć, co możesz zrobić za pomocą polecenia ps w systemie Linux.

1. Wydrukuj bieżące procesy


Domyślnie ps wyświetla tylko kilka informacji. Gdy uruchomisz polecenie ps bez żadnych argumentów, wyświetli ono procesy powiązane z bieżącą powłoką Linuksa. Znajduje procesy, których efektywny identyfikator użytkownika (euid=EUID) jest równy identyfikatorowi bieżącego użytkownika i jest powiązany z wywołującą sesją terminala.

$ ps

Lista wyjściowa będzie zawierać identyfikatory procesów (PID) procesów, nazwę terminala powiązaną z procesami, ich skumulowany czas procesora i nazwę pliku wykonywalnego.

2. Wydrukuj wszystkie aktywne procesy


Powyższe polecenie drukuje tylko bieżącą listę procesów. Jeśli chcesz wyświetlić wszystkie aktywne procesy, użyj zamiast tego jednego z poniższych poleceń.

$ ps -A
$ ps -e

Właściwie oba te polecenia ps są identyczne. Dane wyjściowe powinny zawierać dużą liczbę procesów. Są to procesy potomne wywoływane przez procesy nadrzędne wysokiego poziomu.

3. Drukuj procesy w formacie BSD


Polecenie ps systemu Linux może również wyświetlać statusy procesów w formacie BSD. Jest to odpowiednie dla administratorów, którzy w ramach swojej pracy zarządzają zarówno systemami Linux, jak i BSD. Poniższe przykłady przedstawiają procesy korzystające z tego formatu.

$ ps aux
$ ps ax

Należy pamiętać, że użytkownicy muszą powstrzymać się od grupowania opcji BSD za pomocą myślników. Znaczenie poniższego polecenia różni się od powyższego.

$ ps -aux

4. Procesy drukowania przy użyciu pełnego formatu


Możesz rozszerzyć format wyjściowy poleceń ps i uzyskać bardziej szczegółowe informacje. Aby to jednak zrobić, musisz użyć opcji -f lub -F. Poniższe polecenie wyświetla wszystkie bieżące procesy przy użyciu tego pełnego formatu.

$ ps -ef

Tutaj grupujemy opcję -e z -f. Zapewni to dodatkowe informacje, takie jak numer identyfikatora procesu nadrzędnego (PPID) i wskaźniki wykorzystania procesora. Opcja -F rozszerza ten format o nieco więcej danych.

$ ps -eF

5. Wydrukuj wszystkie procesy dla bieżącego użytkownika


Flaga -x ps pozwala nam wyświetlić wszystkie procesy należące do bieżącego użytkownika. Jest to prosty sposób określenia procesów powiązanych z Twoim bieżącym użytkownikiem.

$ ps -x

To polecenie generuje listę wszystkich aktywnych procesów bieżącego użytkownika. Wyświetla przydatne wskaźniki, takie jak statystyki i czas, wraz z identyfikatorami PID i nazwami poleceń. Wartość TTY wynosząca „?” oznacza, że obecnie nie ma sesji terminala powiązanej z tym konkretnym procesem.

6. Wydrukuj wszystkie procesy dla określonych użytkowników


Możemy także wydrukować listę procesów dla konkretnego użytkownika używając opcji -u lub -U. Poniższe przykłady ilustrują sposób ich działania. Po prostu zastąp nazwę użytkownika istniejącym użytkownikiem w systemie.

$ ps -U ubuntupit
$ ps --User ubuntupit

Obydwa te polecenia są identyczne i po prostu wypisują proces dla użytkownika Ubuntu. Opcja -U lub -User wybiera procesy według prawdziwego identyfikatora użytkownika (RUID) lub nazwy.

$ ps -u ubuntupit
$ ps --user ubuntupit

Powyższe polecenia ps systemu Linux są również identyczne, ale w przeciwieństwie do wcześniejszych przykładów wybierają procesy według efektywnego identyfikatora użytkownika (EUID) lub nazwy.

7. Wydrukuj wszystkie procesy dla roota


Możesz użyć polecenia ps w systemie Linux, aby dowiedzieć się, które procesy są własnością root i działają z uprawnieniami użytkownika root. Użyj następującego polecenia, aby znaleźć te procesy przy użyciu rzeczywistego identyfikatora użytkownika (RUID).

$ ps -U root
$ ps --User root

Użyj opcji -u lub -user, aby znaleźć je według efektywnego identyfikatora użytkownika (EUID), jak pokazano w poniższych przykładach.

$ ps -u root
$ ps --user root

Administratorzy mogą także połączyć obie te opcje w jednym poleceniu. Poniższy przykład drukuje wszystkie procesy należące do roota, używając zarówno ich identyfikatorów RUID, jak i EUID.

$ ps -u root -U root

8. Wydrukuj wszystkie procesy dla określonej grupy


Flaga -G lub -g polecenia ps pozwala nam wydrukować procesy będące częścią grupy. Można za ich pomocą na przykład wskazać wszystkie procesy otwarte przez dowolną osobę z grupy użytkowników. Grupy w Linuksie odnoszą się do zbioru użytkowników, którzy mają te same uprawnienia do określonego systemu plików lub zasobów Linuksa.

$ ps -fG techsupport
$ ps -fG 100

Polecenia te drukują procesy będące własnością działu pomocy technicznej grupy. Opcja -G używa prawdziwego identyfikatora lub nazwy grupy (RGID) i ma długą formę zwaną -Grupa. Opcja -g wybiera procesy na podstawie efektywnego identyfikatora grupy (EGID) lub nazwy.

$ ps -fg techsupport
$ ps -fg 100

Długą formą -g jest -grupa.

9. Procesy druku oparte na PID


Jak już omówiliśmy, PID lub identyfikator procesu to unikalny identyfikator każdego procesu w naszych systemach. Możemy wykorzystać te informacje PID do zlokalizowania określonego procesu. Poniższe polecenie ilustruje to na prostym przykładzie.

$ ps -p 2829
$ ps --pid 2829

To polecenie wybierze proces, którego PID jest równy 2829. Można także określić wiele identyfikatorów PID, używając listy oddzielonej przecinkami lub używając rozwijania nawiasów klamrowych.

$ ps -p 2890,2891,2892,2893,2894,2895

Ten przykład szuka sześciu określonych identyfikatorów PID. Z drugiej strony następujące polecenie ps systemu Linux wyszukuje zakres identyfikatorów procesów.

$ ps -p 29{1..99}

10. Procesy drukowania oparte na PPID


Jeśli chcesz wyświetlić procesy na podstawie ich PPID, powinieneś użyć poniższego polecenia. Flaga -ppid narzędzia ps wybiera procesy według PPID.

$ ps --ppid 1111,1122,1133

Można określić więcej niż jeden identyfikator PPID, używając rozwinięć nawiasów klamrowych lub listy procesów rozdzielanych przecinkami.

$ ps --ppid 2890,2891,2892,2893,2894,2895
$ ps --pid 29{1..99}

11. Procesy drukowania w trybie szybkim


Polecenie ps systemu Linux obsługuje szybki tryb wybierania procesów według ich identyfikatorów PID. W tym trybie ps odczytuje tylko niezbędne dane i nie używa żadnych dodatkowych reguł filtrowania. Co więcej, drukowane identyfikatory PID nie są sortowane ani zachowywane.

$ ps -q 2480,2532,2533
$ ps --quick-pid 2480,2532,2533

Tryb szybki obsługuje wiele PID, a także rozszerzenia zakresu. Jest to szybsza operacja i nadaje się do lokalizowania procesów w ciągu milisekund.

12. Procesy drukowania oparte na TTY


TTY lub TeleTYpewriter oznacza sesję terminala podłączoną do standardowego wejścia. Możesz wybrać procesy oparte na TTY, używając flagi -t ps.

$ ps -t /dev/pts/0
$ ps --tty /dev/pts/0

Jak widać, ps obsługuje również długą formę tej opcji. W powyższym poleceniu /dev/pts/0 oznacza terminal dla mojej bieżącej sesji. Musisz zastąpić to tty powiązanym z twoją osobistą sesją. Prostszą metodą jest interpolacja nazwy terminala bezpośrednio z powłoki, jak pokazano poniżej.

$ ps -t $(tty)

Spowoduje to zastąpienie pola tty w terminalu. Możesz także grupować wiele terminali, korzystając z metod rozszerzania zasięgu pokazanych wcześniej.

13. Wydrukuj procesy dla określonych poleceń


Jak już zauważyłeś, procesy są uruchamiane jako część polecenia. Za każdym razem, gdy uruchamiasz jedno ze swoich ulubionych poleceń terminala Linux, wywołuje ono kilka procesów, które wykonują jego polecenia. Opcja -C polecenia ps pozwala nam wybierać procesy na podstawie nazwy plików wykonywalnych, których są częścią.

$ ps -C chrome

Podobnie jak większość flag, opcja -C pozwala również administratorom wybierać procesy wielu poleceń. Poniższe przykłady pokazują prosty przykład listy.

$ ps -C chrome,apache,gedit

Jednak użytkownikom nie wolno używać białych znaków między listami, w przeciwnym razie ps nie przeanalizuje danych wejściowych.

14. Wydrukuj drzewo procesów


Drzewo procesów pokazuje wizualne połączenie pomiędzy uruchomionymi procesami w systemie. Dzięki temu bardzo łatwo jest wizualizować zależności i wzajemne powiązania procesów. Poniższy przykład pokazuje nam jak to zrobić.

$ ps -eH

Opcja -e wybiera wszystkie procesy, a opcja -H wyświetla hierarchię procesów. Możesz także użyć opcji -f lub -forest. Dla opcji f drukowana jest hierarchia procesu graficznego ASCII, a dla opcji -forest drzewo.

$ ps -e f

Zwróć uwagę na spację pomiędzy -e i f. Ponadto nie ma łącznika poprzedzającego flagę f.

$ ps -e --forest

15. Wydrukuj drzewo procesów dla określonych poleceń


Możemy łatwo wyświetlić połączenie pomiędzy poleceniem Linuksa i związanymi z nim procesami, łącząc opcję -C z jedną z opcji -H, f lub -forest. Poniższe polecenia pokazują naszym czytelnikom kilka prostych przykładów.

$ ps -H -C chrome
$ ps f -C chrome

Ponieważ -C służy do wyboru procesu, a -H/f do modyfikowania formatu wyjściowego, tych dwóch opcji nie można łączyć.

$ ps --forest -C chrome

16. Wydrukuj wątki procesu


Opcja -L polecenia ps systemu Linux pozwala nam wyświetlić wątki powiązane z procesami. Poniższy przykład drukuje wątki dla procesu chrome.

$ ps -L -C chrome

Zapewni to LWP (proces lekki) dla wybranego procesu, w tym przypadku chromu. Użyj opcji -f, aby uzyskać więcej danych.

$ ps -fL -C chrome

To polecenie wyświetli NLWP (liczbę lekkich procesów) obok LWP. Można wybrać wiele procesów, używając ich identyfikatora PID lub nazwy polecenia.

17. Wydrukuj listę wszystkich specyfikatorów formatu


Polecenie ps obsługuje szeroką gamę specyfikatorów formatu innych niż PID, TTY i CMD. Możesz wydrukować całą listę wszystkich obsługiwanych specyfikatorów, używając opcji L.

$ ps L

Należy pamiętać, że ta opcja jest podobna do opcji używanej do drukowania wątków. Obecność lub brak symbolu myślnika pozwala ps przeanalizować, którego wyjścia szukasz.

18. Wydrukuj określone kolumny wyjściowe


Powyższe polecenie wyświetla opcje wyjściowe dostępne dla nas dla ps. Teraz możemy wybrać tylko określone informacje dla procesu, samodzielnie definiując format wyjściowy. Na przykład następujące polecenia wyświetlą PPID, STATE i CMD dla karnacji procesu.

$ ps -o ppid,state,cmd -C chrome
$ ps --format ppid,state,cmd -C chrome

Zatem opcja -o lub -format pozwala nam wybrać określone kolumny dla naszych danych wyjściowych. Poniższy przykład drukuje tylko informacje PPID dla wszystkich procesów.

$ ps -eo ppid

19. Wydrukuj określone kolumny wyjściowe dla wybranych procesów


Poniższy przykład wyświetli informacje o PPID, stanie, cmd, tty i EUID dla określonego procesu. Używamy informacji PID, aby zlokalizować nasz proces docelowy w tym poleceniu.

$ ps -p 2434 -o ppid,state,cmd,tty,euid

Następny przykład znajdzie te same informacje, ale dla zestawu procesów.

$ ps -p 2424,2434,2444,2454,2464 -o ppid,state,cmd,tty,euid

Pamiętaj, aby nie wstawiać żadnych spacji pomiędzy listą PID ani listą specyfikacji wyjściowych. Jeśli chcesz używać białych znaków, usuń przecinki i umieść je w cudzysłowie.

$ ps -p "2424 2434 2444 2454 2464" -o "ppid state cmd tty euid"

20. Drukuj tylko nazwy procesów


Załóżmy, że chcesz poznać nazwę procesu dla określonego identyfikatora procesu i nie chcesz żadnych dodatkowych informacji. Jednym ze sposobów osiągnięcia tego jest wydrukowanie statusu procesu przy użyciu PID i wycięcie wymaganej kolumny za pomocą poleceń wycinania systemu Linux lub awk. Istnieje jednak znacznie prostsze rozwiązanie tego problemu.

$ ps -q 2434 -o comm=

To polecenie wyświetli tylko nazwę procesu dla PID 2434. Wykorzystuje tryb szybki do wyboru tego PID. Jeśli chcesz, możesz także użyć -p lub -pid.

21. Wydrukuj wszystkie identyfikatory PID procesu


Jeśli piszesz skrypty powłoki systemu Linux lub przeprowadzasz audyty systemu, być może będziesz musiał znaleźć wszystkie identyfikatory pid powiązane z określonym procesem. Na szczęście można to bardzo łatwo zrobić za pomocą polecenia ps systemu Linux. Poniższe polecenie wyświetli wszystkie identyfikatory PID procesu chrome.

$ ps -C chrome -o pid=

To polecenie po prostu łączy opcję -C ps ze specyfikatorem wyjścia -o. Jak powinieneś zobaczyć, dane wyjściowe zawierają tylko wartości PID, bez dodatkowych danych. Dlatego nadaje się do stosowania ze skryptami powłoki.

22. Wydrukuj czas wykonania procesu


Czas wykonania procesu wskazuje, ile czasu procesor spędza nad zadaniem. Jest to świetny sposób na znalezienie wadliwych procesów, które zużywają zbyt dużo czasu procesora. Poniższe polecenie pokazuje, jak znaleźć czas wykonania dla danego procesu w systemie Linux.

$ ps -eo etime,user,comm | grep chrome

W tym przykładzie zastosowano polecenie grep systemu Linux w celu odfiltrowania określonego procesu z całej listy procesów. Możesz także określić nazwę procesu za pomocą opcji -C ps.

$ ps -o etime,user,comm -C chrome

Ponieważ wybieramy proces według nazwy, nie musimy podawać opcji -e.

23. Wydrukuj statystyki wykorzystania procesora i pamięci


Możemy użyć polecenia ps, aby wyświetlić wykorzystanie procesora i pamięci przez nasze procesy. Jest to bardzo przydatne przy określaniu błędnych procesów lub rozwiązywaniu problemów związanych z wykorzystaniem zasobów. Poniższe przykłady ilustrują, jak to zrobić.

$ ps -eo pid,ppid,cmd,%mem,%cpu
$ ps -eo "pid ppid cmd %mem %cpu"

Te polecenia wyświetlą dwie dodatkowe kolumny dotyczące użycia procesora i pamięci dla listy procesów. Jeśli chcesz zobaczyć wykorzystanie zasobów dla konkretnego procesu, użyj opcji -C i pomiń -e.

$ ps -o pid,ppid,cmd,%mem,%cpu -C chrome

24. Wydrukuj użycie procesora i pamięci po sortowaniu


Powyższe polecenia same w sobie nie są zbyt ładne, ponieważ dane wyjściowe zawierają wiele procesów. Ponadto wiele z nich nie wpływa znacząco na zasoby procesora. Na szczęście możemy posortować dane wyjściowe, aby znaleźć procesy zużywające największe zasoby.

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head

To polecenie sortuje dane wyjściowe ps i przekazuje dane do polecenia head. Tworzy najważniejsze procesy odpowiedzialne za największe wykorzystanie procesora. Jeśli chcesz znaleźć procesy powodujące zawieszenie systemu, użyj tego polecenia.

25. Wydrukuj czas, który upłynął dla procesów


Czas, który upłynął dla procesu Linux, wskazuje czas od jego uruchomienia przez twój system. Narzędzie ps może wyświetlić ten czas w formacie [[dd-]gg:]mm:ss. Sprawdź poniższy przykład, aby zobaczyć, jak to działa.

$ ps -C chrome -o pid,etime=

To polecenie wyświetli identyfikatory PID procesu chromowania i informacje o czasie, który upłynął. Możemy również określić proces za pomocą jego PID lub PPID, jak pokazano poniżej.

$ ps --ppid 1736 -o pid,etime=

26. Zabij zawieszone procesy za pomocą polecenia Linux PS


Jeśli napotkasz problemy z zawieszaniem się procesora, możesz chcieć zabić procesy zużywające zbyt dużo zasobów procesora. Sprawdź nasz wcześniejszy przewodnik na temat zabijania lub kończenia procesu systemu Linux, aby złagodzić ten problem. Jednakże poniższe jednowierszowe polecenie powłoki jest wygodnym sposobem wykonania tego zadania.

$ ps aux | grep -e 'nano' | awk '{print $2}' | xargs kill -9

To polecenie wykorzystuje kilka przydatnych poleceń terminala systemu Linux, aby znaleźć zablokowany proces i go zabić. Sprawdź nasz przewodnik po poleceniu awk w systemie Linux, aby dowiedzieć się, jak filtrowaliśmy dane.

27. Monitoruj wykorzystanie procesu w czasie rzeczywistym


Polecenie ps systemu Linux udostępnia jedynie statyczną migawkę procesów. Najlepsze narzędzie służy do monitorowania procesów i wykorzystania zasobów w czasie rzeczywistym. Możemy jednak połączyć ps z poleceniem watch, aby monitorować procesy w czasie rzeczywistym.

$ watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'

Polecenie to zapewni podgląd na żywo statusów procesów i ich zużycia zasobów w każdej sekundzie. Polecenie head służy do zmniejszania liczby linii wyjściowych.

28. Zlokalizuj wycieki pamięci


Wycieki pamięci są częstym problemem w wielu aplikacjach korzystających z modelu klient-serwer. Z technicznego punktu widzenia oznacza to, że pamięć przydzielona aplikacji nie jest zwalniana po zamknięciu aplikacji. Poniższe polecenia mogą pomóc administratorom zidentyfikować wycieki pamięci.

$ ps -ef -o pid,pmem --sort pmem | tail -5
$ ps -ef -o pid,pmem --sort %mem | tail -5

Zauważ, że pmem jest synonimem %mem w poleceniu ps systemu Linux. Teraz zwróć uwagę na PID, który zużywa najwięcej pamięci i znajdź szczegółowe informacje na temat tego procesu za pomocą następującego polecenia.

$ ps ev --pid=1776

Uruchom to polecenie kilka razy lub użyj narzędzia Watch, aby monitorować, czy wartość pola RSS wzrasta. Jeśli tak, jest to oznaką wycieku pamięci.

$ watch -n 1 'ps ev --pid=1776'

29. Wydrukuj procesy potomne dla określonego procesu


Wielozadaniowe systemy operacyjne, takie jak Linux, umożliwiają procesom tworzenie własnych procesów potomnych. Zwykle odbywa się to za pomocą jednej z dwóch procedur: system wywołuje fork() lub spawn(). W każdym razie możesz wydrukować listę procesów potomnych utworzonych przez określony proces za pomocą polecenia ps systemu Linux.

$ ps -o pid,uname,comm -C chrome
$ ps -o pid,uname,comm -C chrome --forest

Wyświetlą one procesy potomne dla procesu chrome. Dodanie opcji -forest pomaga zwizualizować powiązania pomiędzy procesami.

30. Zmień nazwę etykiet kolumn


Domyślny schemat nazewnictwa kolumn wyjściowych dla ps jest dość krótki i może dezorientować niektórych użytkowników. Jednak bardzo łatwo jest zmienić nazwę tych etykiet i skonfigurować dla nich niestandardowe nazwy. Poniższe polecenie ilustruje to na prostym przykładzie.

$ ps -e -o pid=PID,uname=USER,cpu=CPU,%mem=MEM%,comm=COMMAND

Dzięki temu bardzo łatwo jest zidentyfikować szanowane kolumny i uniknąć nieporozumień.

31. Wydrukuj informacje dotyczące zabezpieczeń dla polecenia PS w systemie Linux


Użytkownicy mogą drukować informacje o kontekście zabezpieczeń dla swoich procesów przy użyciu flag -context, -N lub Z. Sprawdź poniższe polecenia, aby zobaczyć, jak działają.

$ ps -C chrome --context
$ ps -C chrome Z
$ ps -C chrome -M

Te polecenia wyświetlą kontekst SELinux dla procesu chrome. Aby jednak polecenia ps systemu Linux mogły działać, w systemie powinien być włączony SELinux.

32. Wydrukuj wszystkie informacje o użytkowniku


Użytkownicy mogą pobrać każdy rodzaj informacji o użytkowniku dla danego procesu, wybierając tylko modyfikatory użytkownika dla danych wyjściowych. Sprawdź następujące polecenie, aby zrozumieć, jak to działa.

$ ps -C chrome -o pid,euser,ruser,suser,fuser
$ ps -C chrome -o "pid euser ruser suser fuser"

Obydwa te polecenia są identyczne i po prostu wyświetlają wszystkie informacje o użytkowniku dostępne dla ps w procesie Chrome. Możesz usunąć opcję -C i dodać -e, aby uzyskać te dane dla wszystkich aktywnych procesów w systemie.

33. Wydrukuj format sygnału dla procesów


Sygnały są podstawowym sposobem komunikacji między procesami lub IPC. Służą do wskazywania, kiedy proces musi zostać wstrzymany, kiedy zwolnić zasoby i tak dalej. Narzędzie ps umożliwia użytkownikom wyświetlanie formatu sygnału dla każdego procesu. Sprawdź poniższy przykład, aby zobaczyć, jak to działa w praktyce.

$ ps s -C chrome

Spowoduje to wyświetlenie listy procesów Chrome wraz z różnymi informacjami o sygnałach w sekcjach oczekujących, zablokowanych, ignorowanych i przechwyconych. Może się to przydać, jeśli debugujesz wywołania systemowe niskiego poziomu.

34. Drukuj format zorientowany na użytkownika dla procesów


Format zorientowany na użytkownika ułatwia wizualizację danych procesowych dla użytkowników. Jest dość podobny do formatu wyjściowego w stylu BSD. Po prostu uruchom poniższe polecenie w swoim ulubionym emulatorze terminala Linux, aby zobaczyć, jak wygląda wynik.

$ ps u -C chrome

Podobnie jak w formacie BSD, opcja u nie wymaga poprzedzającego symbolu myślnika. Dane wyjściowe są bardzo zwięzłe, a mimo to zawierają szczegółowe informacje, w tym PID, wykorzystanie procesora, wykorzystanie pamięci, status, czas, który upłynął, i tak dalej.

35. Wydrukuj wszystkie procesy oprócz niektórych


Polecenie ps w systemie Linux oferuje wygodny sposób negowania lub uzupełniania list procesów, zwany odznaczaniem. Dzięki temu użytkownicy mogą drukować wszystkie procesy z wyjątkiem tych, które spełniają określone wymagania. Sprawdź poniższe polecenia, aby zobaczyć, jak to działa.

$ ps -C chrome --deselect
$ ps -C chrome -N

Obie opcje -N i -deselect są identyczne i dlatego dają ten sam wynik. Wynikiem tych poleceń będzie lista wszystkich procesów z wyjątkiem chrome. Działają również z każdą inną opcją. Na przykład poniższe polecenie wydrukuje wszystkie identyfikatory PID z wyjątkiem tych wymienionych.

$ ps -p{1..100} --deselect

Dane wyjściowe będą zawierać listę wszystkich identyfikatorów PID z wyjątkiem od 1 do 100.

36. Procesy drukowania przy użyciu długiego formatu BSD


Użycie długiego formatu wyników pozwala użytkownikom uzyskać więcej informacji za pomocą jednego polecenia ps. Po prostu użyj opcji -l, aby ustawić tryb wyjściowy na długi format BSD.

$ ps -el

Z tą opcją możesz także użyć dodatkowej opcji -y. Wyłączy flagę ADDR i zamiast tego użyje RSS.

$ ps -ely

Dane wyjściowe tego polecenia zawierają informacje takie jak PID, PPID, UID, użycie procesora, priorytet procesu, użycie pamięci, rozmiar i tak dalej.

37. Wydrukuj informacje o debugowaniu


Poniższe polecenie wyświetli informacje debugowania dostępne dla użytkowników dla polecenia ps. Może się to przydać podczas debugowania programów i procesów.

$ ps --info

Dane wyjściowe tego polecenia zawierają wiele przydatnych informacji, takich jak flagi kompilacji, biblioteki, kompilator, dane nagłówka, wersja i tak dalej.

38. Wyświetl informacje o wersji


Narzędzie ps jest jednym z najstarszych narzędzi do monitorowania procesów w systemach Linux i BSD. Z biegiem czasu ewoluował i doczekał się wielu znaczących wdrożeń. Ponieważ w zależności od wersji często występują różnice, należy użyć niektórych poleceń w zależności od wersji zainstalowanej w systemie.

$ ps --version
$ ps -V
$ ps V

Wszystkie powyższe polecenia są identyczne i po prostu wyświetlają informacje o wersji procps-ng. Jest to pakiet monitorowania procesów zawierający polecenie ps.

39. Wyświetl informacje pomocy


Strona pomocy zawiera skróconą listę przydatnych informacji na temat poleceń systemu Linux. Składnia tego w ps jest następująca.

$ pf --help section

Tutaj słowo kluczowe sekcji odnosi się do jednego z prostych, list, danych wyjściowych, wątków, różnych i wszystkich. Co więcej, można je zastąpić początkowymi literami, takimi jak s, l, o, t, m i a.

$ ps --help simple
$ ps --help threads
$ ps --help all

40. Wyświetl stronę podręcznika


Podręcznik lub strona podręcznika poleceń systemu Linux zawiera szczegółowe informacje na temat wszystkich dostępnych opcji i ich użycia. To idealne miejsce, aby rozpocząć naukę ps.

$ man ps

Możesz łatwo przewijać tę dokumentację za pomocą klawiszy PageUP i PageDown na klawiaturze. Naciśnij q, aby wrócić do powłoki.

Przemyślenia końcowe


Polecenie ps systemu Linux jest prostym, ale wszechstronnym narzędziem dla administratorów. Pozwala użytkownikom łatwo znaleźć informacje o procesie i wykonywać zadania, takie jak monitorowanie, rozwiązywanie problemów i audyt. Jeśli chcesz podjąć dobrze płatną pracę z zakresu informatyki wykorzystującą Linuksa, powinieneś być więcej niż biegły w posługiwaniu się ps. Właśnie dlatego nasi redaktorzy opatrzyli ten przewodnik wieloma praktycznymi przykładami.

Jeśli jesteś kompletnym początkującym, dodaj ten przewodnik do zakładek, aby móc z niego korzystać w przyszłości. Mamy nadzieję, że dostarczyliśmy Ci niezbędnych informacji, których szukałeś. Jeśli masz dalsze pytania lub wskazówki, zostaw nam komentarz poniżej.

Powiązane artykuły