DOKK / manpages / debian 10 / manpages-pl / ps.1.pl
PS(1) Polecenia użytkownika PS(1)

ps - zgłasza status procesu

ps [opcje]

ps wyświetla informacje o wybranych aktywnych procesach. Jeśli potrzebujesz powtarzającego się statusu, użyj programu top(1).

Ta wersja programu ps akceptuje kilka rodzajów opcji:

1
Opcje w stylu UNIX, które mogą być grupowane i muszą być poprzedzone myślnikiem.
2
Opcje BSD, które mogą być grupowane i nie mogą być użyte z myślnikiem.
3
Długie opcje GNU, które są poprzedzone dwoma myślnikami.

Różne typy opcji można ze sobą dowolnie mieszać, jednakże mogą pojawić się konflikty. Niektóre opcje są synonimiczne, ich funkcjonalność jest identyczna z powodu mnogości standardów i implementacji ps, z którymi ta wersja programu ps jest zgodna.

Proszę zauważyć, że "ps -aux" to nie jest to samo, co "ps aux". Standardy POSIX i UNIX wymagają, aby "ps -aux" wypisało wszystkie procesy, których właścicielem jest użytkownik o nazwie "x", oraz te procesy, które byłyby wybrane przez podanie opcji -a. Jeżeli użytkownik o nazwie "x" nie istnieje, to ps może zinterpretować tę komendę jako "ps aux" i wypisać ostrzeżenie. To zachowanie ma pomóc w przechodzeniu ze starych skryptów i nawyków. Może się to zmienić, nie należy na tym zachowaniu polegać.

Domyślnie ps wyświetla procesy mające ten sam efektywny identyfikator użytkownika (euid=EUID), co bieżący użytkownik, oraz podłączone do tego samego terminala, do którego podłączona jest osoba uruchamiająca ps. Wyświetlany jest identyfikator procesu (pid=PID), terminal (tty), do którego proces jest podłączony (tname=TTY), łączny czas procesora w formacie [DD-]hh:mm:ss (time=TIME) oraz nazwa pliku wykonywalnego (ucmd=CMD). Domyślnie wyjście nie jest sortowane.

Użycie opcji w stylu BSD doda do domyślnego wyjścia kolumnę ze stanem procesu (stat=STAT) i wyświetli argumenty polecenia (args=COMMAND) zamiast nazwy pliku wykonywalnego. Można to nadpisać za pomocą zmiennej środowiskowej PS_FORMAT. Użycie opcji w stylu BSD zmieni także wybór wyświetlanych procesów, włączając te procesy podłączone do innych terminali (TTY), których właścicielem jest użytkownik uruchamiający program ps; może to zostać opisane jako wybór wszystkich procesów bez tych, których właścicielami są inni użytkownicy, i tych, które nie są podłączone do żadnego terminala. Te efekty nie są brane pod uwagę, gdy poniżej opcje są opisane jako "identyczne" - na przykład opcja -M jest uważana za identyczną z Z itd.

Poza przypadkiem opisanym poniżej, opcje wyboru procesów są dołączające. Nie bierze się pod uwagę domyślnego wyboru procesów, lecz procesy wybrane przez użytkownika są dołączane do zbioru procesów do wyświetlenia. Tak więc proces będzie pokazany, jeżeli spełnia którekolwiek z kryteriów wyboru podanych przez użytkownika.

ps -e
ps -ef
ps -eF
ps -ely
ps ax
ps axu
ps -ejH
ps axjf
ps -eLf
ps axms
ps -eo euser,ruser,suser,fuser,f,comm,label
ps axZ
ps -eM
ps -U root -u root u
ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ps -Ao pid,tt,user,fname,tmout,f,wchan
ps -C syslogd -o pid=
ps -q 42 -o comm=

Uruchamia restrykcję w stylu BSD "tylko własne", która jest nakładana na zbiór wszystkich procesów, jeżeli są używane jakieś opcje w stylu BSD (bez "-"), lub gdy osobowość ps jest z rodziny BSD. Wybrany w ten sposób zbiór procesów jest dołączany do zbioru procesów wybranych w inny sposób. Alternatywny opis jest taki, że ta opcja powoduje wypisanie przez ps wszystkich procesów mających przypisany terminal (tty) lub wypisanie wszystkich procesów, jeżeli użyta łącznie z opcją x.
Wybór wszystkich procesów. Identyczne z -e.
Wybór wszystkich procesów oprócz zarówno liderów sesji (zobacz getsid(2)), jak i procesów niepodłączonych do żadnego terminala.
Wybór wszystkich procesów poza liderami sesji.
Wybór wszystkich procesów, poza tymi, które spełniają określone warunki (odwraca wybór). Identyczne z -N.
Wybór wszystkich procesów. Identyczne z -A.
Naprawdę wszystkie, nawet liderzy sesji. Ta flaga jest przestarzała i może zniknąć w przyszłych wersjach programu. Jest włączana przez flagę a i jest użyteczna tylko podczas pracy w osobowości sunos4.
-N
Wybór wszystkich procesów, poza tymi, które spełniają określone warunki (odwraca wybór). Identyczne z --deselect.
T
Wybór wszystkich procesów podpiętych do tego terminala. Identyczny z opcją t bez żadnych argumentów.
Zawęża wybór tylko do uruchomionych procesów.
Uruchamia restrykcję w stylu BSD "musi mieć tty", która jest nakładana na zbiór wszystkich procesów, jeżeli są używane jakieś opcje w stylu BSD (bez "-"), lub gdy osobowość ps jest z rodziny BSD. Wybrany w ten sposób zbiór procesów jest dołączany do zbioru procesów wybranych w inny sposób. Alternatywny opis jest taki, że ta opcja powoduje wymienienie wszystkich procesów, których właścicielem jest bieżący użytkownik (EUID taki sam, jak procesu ps), lub wymienienie wszystkich procesów, jeśli użyta łącznie z opcją a.

Te opcje akceptują pojedynczy argument w postaci listy rozdzielonej spacjami bądź przecinkami. Mogą być używane wiele razy. Przykład: ps -p "1 2" -p 3,4

-123
Identyczne z --pid 123.
123
Identyczne z --pid 123.
Wybór przez nazwę polecenia. Wybiera procesy, których nazwa pliku wykonywalnego jest podana w cmdlist.
Wybór przez rzeczywiste ID lub nazwę grupy (RGID). Wybiera nazwy procesów, których rzeczywista nazwa grupy bądź identyfikator występuje w liście grplist. Rzeczywisty identyfikator grupy określa grupę użytkownika, który utworzył proces, patrz getgid(2).
Wybór przez podanie sesji LUB nazwy efektywnej grupy. Wiele standardów określa wybór przez podanie sesji, ale wybór przez podanie efektywnej nazwy grupy jest logicznym zachowaniem, używanym przez wiele systemów operacyjnych. Ta wersja programu ps wyszuka po sesjach, jeżeli lista zawiera tylko liczby (którymi są sesje). Numeryczne identyfikatory grup będą działać tylko wtedy, gdy podane zostaną również jakieś nazwy grup. Patrz opcje -s i --group.
Wybór przez podanie rzeczywistego ID grupy (RGID) bądź nazwy. Identyczne z -G.
Wybór przez efektywne ID lub nazwę grupy (EGID). Wybiera procesy, których efektywna nazwa grupy lub ID występuje w grouplist. Efektywny identyfikator grupy określa grupę, której prawa dostępu do plików są używane przez proces (patrz getegid(2)). Opcja -g jest często alternatywą dla --group.
Wybór przez podanie identyfikatorów procesów. Identyczne z -p i --pid.
Wybór przez PID. Wybiera procesy, których identyfikatory pojawiają się w pidlist. Identyczne z p i --pid.
Wybór przez ID procesu. Identyczne z -p i p.
Wybór przez ID procesu nadrzędnego. Wybiera procesy, których ID procesu nadrzędnego występuje w pidlist. To znaczy, że wybiera procesy, których dzieci określono w pidlist.
Wybór przez podanie identyfikatorów procesów (tryb szybki). Identyczne z -q i --quick-pid.
Wybór przez ID procesu (tryb szybki). Wybiera to procesy, których numery ID pojawiają się w pidlist. Gdy ta opcja jest używana, ps czyta potrzebne informacje tylko dla identyfikatorów procesów wymienionych w pidlist i nie aplikuje dodatkowych reguł filtrujących. Porządek identyfikatorów jest zachowywany. W tym trybie nie jest możliwe podawanie dodatkowych opcji wybierania procesów, sortowania i drzewiastego wyświetlania. Identyczne z q oraz --quick-pid.
Wybór przez ID procesu (tryb szybki). Identyczne z -q i q.
-s sesslist
Wybór przez ID sesji. Wybiera procesy mające identyfikator sesji podany w sesslist.
Wybór przez ID sesji. Identyczne z -s.
t ttylist
Wybór przez tty. Prawie identyczne z -t i --tty, jednak może być także użyte z pustą listą ttylist, aby określić terminal skojarzony z ps. Używanie opcji T jest uważane za lepsze niż podanie opcji t z pustą ttylist.
-t ttylist
Wybór przez tty. Wybiera procesy podłączone do terminali podanych w liście ttylist. Terminale (tty lub ekrany dla wyjścia tekstowego) mogą być podane na różne sposoby: /dev/ttyS1, ttyS1, S1. Można użyć "-", aby określić procesy niepodłączone do żadnego terminala.
Wybór przez podanie terminala. Identyczne z -t i t.
Wybór przez efektywną ID lub nazwę użytkownika (EUID). Wybiera procesy, których efektywna nazwa użytkownika lub ID jest w userlist. Efektywne ID użytkownika opisuje użytkownika, którego prawa dostępu do plików są używane przez proces (patrz geteuid(2)). Identyczne z -u i --user.
Wybór przez rzeczywiste ID lub nazwę użytkownika (RUID). Wybiera procesy, których rzeczywista nazwa użytkownika lub ID jest w userlist. Rzeczywiste ID użytkownika opisuje użytkownika, który utworzył proces (patrz getuid(2)).
Wybór przez podanie efektywnego ID użytkownika (EUID) bądź nazwy. Wybiera procesy, których efektywna nazwa użytkownika lub ID jest w userlist.

Efektywne ID użytkownika opisuje użytkownika, którego prawa dostępu do plików są używane przez proces (patrz geteuid(2)). Identyczne z U i --user.

Wybór przez podanie rzeczywistego ID użytkownika (RUID) bądź nazwy. Identyczne z -U.
Wybór przez podanie efektywnego ID użytkownika (EUID) bądź nazwy. Identyczne z -u i U.

Poniższe opcje są używane do wyboru informacji wyświetlanych przez ps. Wyjście może zależeć od osobowości.

Wyświetla inne informacje schedulera, w połączeniu z opcją -l.
Wyświetla format kontekstu bezpieczeństwa (dla SELinuksa).
Wyjście w pełnym formacie. Ta opcja może być połączona z wieloma innymi opcjami w stylu UNIX, aby dodać dodatkowe kolumny. Także powoduje wypisywanie argumentów poleceń. Użyta z -L dodaje kolumny NLWP (liczba wątków) i LWP (ID wątku). Patrz opcja c, słowo kluczowe formatu args i słowo kluczowe formatu comm.
Format ekstrapełny. Patrz opcja -f, którą włącza -F.
Format zdefiniowany przez użytkownika. Identyczne z -o i o.
Format kontroli zadań BSD.
Format zadań.
l
Długi format BSD.
-l
Długi format. Opcja -y jest często przydatna w połączeniu z tą opcją.
Dodaje kolumnę z danymi dotyczącymi bezpieczeństwa. Identyczne z Z (dla SELinuksa).
jest predefiniowanym o (nadpisanym). Opcja BSD O może zachowywać się jak -O (wyjście zdefiniowane przez użytkownika z paroma polami predefiniowanymi) albo może być użyta do określenia porządku sortowania. Heurystyka jest używana do określenia pożądanego zachowania się tej opcji. Aby wprost określić wymagane zachowanie (sortowanie lub formatowanie), należy podać tę opcję w inny sposób (np. jako -O lub --sort). Używana jako opcja formatowania jest identyczna z -O, z osobowością BSD.
Jak -o, ale z paroma kolumnami domyślnie predefiniowanymi. Identyczne z -o pid,format,state,tname,time,command lub -o pid,format,tname,time,cmd, patrz -o niżej.
Określa format zdefiniowany przez użytkownika. Identyczne z -o i --format.
Format definiowany przez użytkownika. format jest pojedynczym argumentem w formie listy rozdzielonej spacjami bądź przecinkami, określającej poszczególne kolumny wyjścia. Rozpoznawane słowa kluczowe opisano poniżej, w sekcji STANDARDOWE SPECYFIKATORY FORMATU. Można zmienić nazwę nagłówków (ps -o pid,ruser=RzeczywistyUżytkownik -o comm=Polecenie), jeśli jest to pożądane. Jeśli wszystkie nagłówki kolumn są puste (ps -o pid= -o comm=), linia nagłówka nie jest wyświetlana. Szerokość kolumn jest zwiększana w razie potrzeby dla szerokich nagłówków; może być to użyte do poszerzania kolumn takich jak WCHAN (ps -o pid,wchan=SZEROKA-KOLUMNA-WCHAN -o comm). Oferowana jest także bezpośrednia kontrola szerokości kolumn (ps opid,wchan:42,cmd). Zachowanie polecenia ps -o pid=X,comm=Y zależy od osobowości: wyjściem może być jedna kolumna o nazwie "X,comm=Y" lub dwie kolumny nazwane "X" i "Y". W razie wątpliwości, prosimy użyć wielu opcji -o. W razie potrzeby, w zmiennej środowiskowej PS_FORMAT można podać domyślny format. DefSysV i DefBSD to makra, których można użyć, aby wybrać domyślne kolumny w stylu Uniksa lub BSD.
s
Wyświetla format sygnałów.
Wyświetla format zorientowany na użytkownika
Wyświetla format pamięci wirtualnej.
X
Format rejestru.
Nie pokazuje flag, wyświetla rss zamiast addr. Może być użyta tylko z -l.
Z
Dodaje kolumnę z danymi dotyczącymi bezpieczeństwa. Identyczne z -M (dla SELinuksa).

Wyświetla prawdziwą nazwę polecenia. Bazuje ona na nazwie pliku wykonywalnego, a nie na wartości tablicy argumentów procesu (argv). Dlatego też argumenty i ich modyfikacje nie są wyświetlane. Ta opcja efektywnie przekształca słowo kluczowe args na comm i jest użyteczna w połączeniu z opcją formatowania -f i z różnymi opcjami formatowania w stylu BSD, które wszystkie wyświetlają argumenty poleceń. Patrz opis opcji -f i słów kluczowych formatowania args oraz comm.
Ustawia szerokość ekranu.
Ustawia szerokość ekranu.
Dołącza kilka danych zmarłych procesów-dzieci (jako sumę z rodzicem).
Wyświetla środowisko za poleceniem.
Hierarchia procesów jako ASCII-art (las).
Drzewo procesów jako ASCII-art.
Brak nagłówka (lub - w osobowości BSD - jeden nagłówek na ekran). Opcja h sprawia problemy. Standardowe ps z BSD używa tej opcji do wyświetlenia nagłówka na każdej stronie wyjścia, ale starsze ps z Linuksa używa tej opcji do całkowitego wyłączenia nagłówka. Ta wersja programu ps zachowuje się jak wersja linuksowa i nie wypisuje nagłówka, chyba że wybrano osobowość BSD - w tym przypadku wypisuje nagłówek na każdej stronie wyjścia. Niezależnie od osobowości, można użyć opcji --headers i --no-headers, aby - odpowiednio - włączyć wypisywanie nagłówka na każdej stronie bądź całkowicie wyłączyć wypisywanie nagłówka.
Pokazuje hierarchię procesów (las).
Powtarza linie nagłówka, po jednej na stronę wyjścia.
Określa porządek sortowania. Składnia sortowania jest następująca: [+|-]klucz[,[+|-]klucz[,...]]. Proszę wybrać wieloliterowy klucz z sekcji STANDARDOWE SPECYFIKATORY FORMATU. "+" jest opcjonalny, ponieważ domyślnym porządkiem jest rosnący porządek numeryczny lub leksykograficzny. Identyczne z --sort.
Przykłady:
ps jaxkuid,-ppid,+pid
ps axk comm o comm,args
ps kstart_time -ef
Ustawia wysokość ekranu.
Ustawia plik z listą nazw. Identyczne z N. Plik z listą nazw jest potrzebny do poprawnego wyświetlania kolumny WCHAN i dla poprawnego wyjścia musi dokładnie odpowiadać obecnej wersji jądra Linuksa. Bez tej opcji, domyślna ścieżka poszukiwań pliku z listą nazw jest następująca:
$PS_SYSMAP
$PS_SYSTEM_MAP
/proc/*/wchan
/boot/System.map-$(uname -r)
/boot/System.map
/lib/modules/$(uname -r)/System.map
/usr/src/linux/System.map
/System.map
Wyjście liczbowe dla kolumn WCHAN i USER (włączając wszystkie typu UID i GID).
N namelist
Określa plik z listą nazw funkcji jądra. Identyczne z -n, patrz poniżej -n.
Nie wyświetla żadnej linii nagłówka. --no-heading jest aliasem tej opcji.
Porządek sortowania (nadpisana). Opcja BSD O albo może zachowywać się jak -O (wyjście zdefiniowane przez użytkownika z paroma polami predefiniowanymi), albo może być użyta do określenia porządku sortowania. Heurystyka jest używana do określenia pożądanego zachowania się tej opcji. Aby wprost określić wymagane zachowanie (sortowanie lub formatowanie), należy podać tę opcję w inny sposób (na przykład jako -O lub --sort).
Dla sortowania, przestarzała składnia BSD opcji O jest następująca O[+|-]k1[,[+|-]k2[,...]]. Sortuje listę procesów zgodnie z wielopoziomowym kluczem określonym przez sekwencję jednoliterowych krótkich kluczy k1, k2, ... opisanych w sekcji PRZESTARZAŁE KLUCZE SORTOWANIA poniżej. "+" jest obecnie opcjonalny, służy jedynie do powtórnej iteracji w domyślnym kierunku po kluczu, jednak może on pomóc rozróżnić O sortujące od O formatującego. "-" odwraca kierunek sortowania tylko w kluczu, przed którym występuje.
Ustawia wysokość ekranu.
S
Sumuje niektóre informacje, jak użycie CPU, od umarłych procesów-dzieci do ich rodziców. Użyteczne przy badaniu systemu, w którym proces-rodzic do wykonania zadania wielokrotnie uruchamia krótko żyjące dzieci.
Określa porządek sortowania. Składania sortowania jest następująca: [+|-]klucz[,[+|-]klucz[,...]] Proszę podać wieloliterowy klucz z sekcji STANDARDOWE SPECYFIKATORY FORMATU. "+" jest opcjonalny, ponieważ domyślne sortowanie odbywa się w rosnącym porządku numerycznym lub leksykograficznym. Identyczny z k. Przykład: ps jax --sort=uid,-ppid,+pid
Szerokie wyjście. Proszę użyć dwa razy, aby uzyskać nielimitowaną szerokość wyjścia.
Szerokie wyjście. Proszę użyć dwa razy, aby uzyskać nielimitowaną szerokość wyjścia.
Ustawia szerokość ekranu.

Wyświetla wątki tak, jakby były procesami
-L
Wyświetla wątki, być może z kolumnami LWP i NLWP.
Wyświetla wątki za procesami.
Wyświetla wątki za procesami.
-T
Wyświetla wątki, być może z kolumną SPID.

Wyświetla komunikat pomocy. Argument sekcja może być jednym z simple (prosty), list (lista), output (wyjście), threads (wątki), misc (różne) lub all (wszystko). Argument może zostać skrócony do jednej z zaznaczonych liter, tak jak w: s|l|o|t|m|a.
Wyświetla informacje przydatne przy debugowaniu.
L
Wyświetla listę wszystkich specyfikatorów formatu.
Wyświetla wersję pakietu procps-ng.
Wyświetla wersję pakietu procps-ng.
Wyświetla wersję pakietu procps-ng.

Ta wersja ps używa do działania wirtualnych plików z katalogu /proc. To ps do działania nie wymaga uprawnień "setuid kmem " ani żadnych innych przywilejów. Nie należy dawać tej wersji ps żadnych specjalnych uprawnień.

Aby poprawnie wyświetlić kolumnę WCHAN, ta wersja ps musi mieć dostęp do danych listy nazw. Dla wersji jądra niższych niż 2.6, plik System.map musi być zainstalowany.

Użycie CPU jest obecnie wyrażone jako procent czasu spędzonego na wykonywaniu procesu podczas całego czasu życia procesu. Nie jest to idealne i nie jest zgodne ze standardami, z którymi ps jest zgodne, poza tym przypadkiem. Jest mało prawdopodobne, aby użycie CPU dodało się dokładnie do 100%.

Pola SIZE i RSS nie liczą pewnych części procesu, włączając to tablice stron, stos jądra, struktury thread_info i task_struct. Jest to zazwyczaj 20 KiB pamięci, która jest zawsze wykorzystywana. SIZE oznacza wirtualny rozmiar procesu (kod+dane+stos).

Procesy oznaczone jako <defunct> są procesami zmarłymi (tak zwane "zombi"), które pozostały, ponieważ ich rodzic nie zniszczył ich odpowiednio. Te procesy będą zniszczone przez init(8), gdy ich rodzic zakończy działanie.

Jeśli długość nazwy użytkownika jest większa niż długość wyświetlanej kolumny, to używany jest numeryczny identyfikator użytkownika.

Używanie opcji poleceń takich jak ps -aux nie jest zalecane, ponieważ jest to pomieszanie dwóch różnych standardów. Zgodnie ze standardami POSIX i UNIX powyższe polecenie prosi o wyświetlenie wszystkich poleceń mających przypisany terminal, czyli ogólnie wszystkich poleceń wykonywanych przez użytkowników, oraz wszystkich poleceń należących do użytkownika o nazwie "x". Jeśli taki użytkownik nie istnieje, to ps założy, że tak naprawdę chodziło o ps aux.

Suma poniższych wartości jest wyświetlana w kolumnie "F", dostarczanej przez specyfikator wyjścia flags:

1
sforkowany, ale nie wykonał exec.
4
używał uprawnień superużytkownika.

Poniżej są różne wartości, które specyfikatory wyjścia s, stat oraz state (nagłówek "STAT" lub "S") wyświetlą, aby opisać stan procesu:

Nieprzerywalnie uśpiony (zazwyczaj wejście/wyjście)
Wykonywany lub możliwy do wykonania (w kolejce do wykonania)
Przerywalnie uśpiony (czekający na zakończenie zdarzenia)
Zatrzymany przez sygnał kontroli zadań
Zatrzymany przez program debugujący podczas śledzenia
Stronicowany (niepoprawne od wersji jądra 2.6.xx)
Zmarły (nigdy nie powinno wystąpić)
Proces niefunkcjonujący ("zombie"), zakończony, ale nieusunięty przez rodzica

Dla formatów BSD, jeżeli użyto słowa kluczowego stat, mogą zostać wyświetlone dodatkowe znaki:

<
O wysokim priorytecie (niemiły dla innych użytkowników)
O niskim priorytecie (miły dla innych użytkowników)
Mający zablokowane strony w pamięci (dla czasu rzeczywistego lub IO)
Będący liderem sesji
Wielowątkowy (używając CLONE_THREAD, jak to robi NPTL pthreads)
+
Będący w pierwszoplanowej grupie procesów

Te klucze są używane przez opcję O BSD (jeśli jest używana do sortowania). Opcja GNU --sort nie używa tych kluczy, lecz specyfikatorów opisanych poniżej w sekcji STANDARDOWE SPECYFIKATORY FORMATOWANIA. Proszę zauważyć, że wartości używane do sortowania są wewnętrznymi wartościami programu ps, a nie gotowymi wartościami używanymi w którymś z wyjściowych pól formatu (tj. sortowanie po tty posortuje po numerze urządzenia, a nie zgodnie z wyświetlaną nazwą terminala). Proszę przepuścić wyjście ps przez polecenie sort(1), aby posortować po gotowych wartościach.

KLUCZ DŁUGI OPIS
c cmd Sama nazwa programu wykonywalnego
C pcpu Wykorzystanie procesora
f flags Flagi jak w polu F długiego listingu
g pgrp ID grupy procesu
G tpgid Id grupy procesu kontrolującego tty
j cutime Łączny czas użytkownika
J cstime Łączny czas systemu
k utime Czas użytkownika
m min_flt Liczba mniejszych błędów stron
M maj_flt Liczba większych błędów stron
n cmin_flt Łączne mniejsze błędy stron
N cmaj_flt Łączne większe błędy stron
o session ID sesji
p pid ID procesu
P ppid ID procesu rodzicielskiego
r rss Wartość "resident set size"
R resident Wartość "resident pages"
s size Rozmiar pamięci w kilobajtach
S share Wielkość stron dzielonych
t tty Numer urządzenia terminala kontrolującego
T start_time Czas uruchomienia procesu
U uid Id użytkownika
u user Nazwa użytkownika
v vsize Całkowity rozmiar VM (pamięci) w KiB
y priority Priorytet w schedulerze jądra

Ta wersja ps wspiera specyfikatory formatu AIX, które działają trochę jak kody formatujące printf(1) i printf(3). Na przykład, normalne domyślne wyjście można uzyskać za pomocą: ps -eo "%p %y %x %c". ZWYKŁE kody opisano w następnym rozdziale.

KOD ZWYKŁY NAGŁÓWEK
%C pcpu %CPU
%G group GROUP
%P ppid PPID
%U user USER
%a args COMMAND
%c comm COMMAND
%g rgroup RGROUP
%n nice NI
%p pid PID
%r pgid PGID
%t etime ELAPSED
%u ruser RUSER
%x time TIME
%y tty TTY
%z vsz VSZ

Sekcja ta zawiera słowa kluczowe, które mogą być użyte do kontrolowania formatu wyjścia (np. z opcją -o) albo do sortowania wybranych procesów z opcją GNU --sort.

Przykład: ps -eo pid,user,args --sort user

Ta wersja ps próbuje rozpoznawać większość słów kluczowych używanych w innych implementacjach ps.

Następujące definiowane przez użytkownika specyfikatory formatu mogą zawierać spacje: args, cmd, comm, command, fname, ucmd, ucomm, lstart, bsdstart, start.

Niektóre słowa kluczowe mogą nie być dostępne przy sortowaniu.

KOD NAGŁÓWEK OPIS
%cpu %CPU Użycie procesora dla procesu w formacie "##.#". Jest to użyty czas CPU podzielony przez czas, w którym proces był wykonywany (współczynnik cputime/realtime), wyrażony w procentach. Nie sumuje się do 100%, chyba że ma się szczęście (alias pcpu).
%mem %MEM Stosunek współczynnika "resident set size" procesu do fizycznej pamięci wyrażony w procentach (alias pmem).
args COMMAND Polecenie ze wszystkimi jego argumentami. Mogą być pokazane zmodyfikowane argumenty. Wyjście w tej kolumnie może zawierać spacje. Proces oznaczony jako <defunct> jest częściowo martwy i czeka, na całkowite zniszczenie przez rodzica. Czasami argumenty procesu nie są dostępne; jeśli tak się stanie, to ps zamiast nich wyświetli nazwę programu wykonywalnego w nawiasach (aliasy cmd, command). Patrz także opis słowa kluczowego formatowania comm oraz opis opcji -f ic. Jeśli podana ostatnia, ta kolumna rozszerzy się aż do granic ekranu. Jeśli ps nie jest w stanie określić szerokości ekranu, na przykład gdy wyjście jest przekierowane (w potoku) do pliku lub innego polecenia, to szerokość wyjścia nie jest zdefiniowana (może wynosić 80, może być nieograniczona, może być określona na podstawie zmiennej TERM i tak dalej). W takim przypadku można użyć zmiennej środowiskowej COLUMNS albo opcji--cols, aby dokładnie określić szerokość. Można także dostosować szerokość, używając opcji w lub -w.
blocked BLOCKED Maska zablokowanych sygnałów, patrz signal(7). Zgodnie z szerokością pola, wyświetlana jest jako 32- lub 64-bitowa maska w formacie liczby szesnastkowej (aliasy sig_block, sigmask).
bsdstart START Czas od uruchomienia polecenia. Jeśli proces został uruchomiony mniej niż 24 godziny temu, formatem wyjścia jest "HH:MM", w przeciwnym wypadku jest to "Mmmm:SS" (gdzie Mmm oznacza trzyliterowy skrót nazwy miesiąca). Patrz także lstart, start, start_time oraz stime.
bsdtime TIME Połączony czas procesora, użytkownika + systemu. Formatem wyświetlania jest zazwyczaj "MMM:SS", jednak może być przesunięty w prawo, jeśli proces użył więcej niż 999 minut czasu procesora.
c C Wartość liczbowa procentu użycia procesowa. Obecnie jest to wartość całkowita procentowego użycia podczas całego życia procesu (patrz %cpu).
caught CAUGHT Maska przechwyconych sygnałów, patrz signal(7). Zgodnie z szerokością pola, wyświetlana jest jako 32- lub 64-bitowa maska w formacie liczby szesnastkowej (aliasy sig_catch, sigcatch).
cgroup CGROUP Wyświetla grupy kontrolne, do których proces należy.
class CLS Klasa schedulera procesu (aliasy policy, cls). Możliwe wartości tego pola są następujące: "" 2 - nieraportowany TS SCHED_OTHER FF SCHED_FIFO RR SCHED_RR B SCHED_BATCH ISO SCHED_ISO IDL SCHED_IDLE ? wartość nieznana
cls CLS Klasa schedulera procesu (aliasy policy, cls). Możliwe wartości tego pola są następujące: "" 2 - nieraportowany TS SCHED_OTHER FF SCHED_FIFO RR SCHED_RR B SCHED_BATCH ISO SCHED_ISO IDL SCHED_IDLE ? wartość nieznana
cmd CMD Patrz args (aliasy args, command).
comm COMMAND Nazwa polecenia (tylko nazwa programu wykonywalnego). Zmiany nazwy polecenia nie będą wyświetlane. Proces oznaczony jako <defunct> jest częściowo martwy i czeka, na całkowite zniszczenie przez rodzica. Wyjście w tej kolumnie może zawierać spacje (aliasy ucmd, ucomm). Patrz także opis słowa kluczowego formatowania args oraz opis opcji -f i c. Jeśli podana ostatnia, ta kolumna rozszerzy się aż do granic ekranu. Jeśli ps nie jest w stanie określić szerokości ekranu, na przykład gdy wyjście jest przekierowane (w potoku) do pliku lub innego polecenia, to szerokość wyjścia nie jest zdefiniowana (może wynosić 80, może być nieograniczona, może być określona na podstawie zmiennej TERM i tak dalej). W takim przypadku można użyć zmiennej środowiskowej COLUMNS albo opcji--cols, aby dokładnie określić szerokość. Można także dostosować szerokość, używając opcji w lub B.
command COMMAND Patrz args. (aliasy args, command).
cp CP Promil (dziesiąta część procentu) użycia CPU (patrz %cpu).
cputime TIME Łączny czas CPU w formacie "[DD-]hh:mm:ss" (alias time).
drs DRS Resident set size danych, czyli rozmiar fizycznej pamięci przeznaczonych na wszystko, co nie jest kodem wykonywalnym.
egid EGID Efektywny identyfikator grupy procesy jako liczba dziesiętna (alias gid).
egroup EGROUP Efektywne ID grupy procesu. Będzie to identyfikator tekstowy, jeśli jest znany, a pole ma wystarczającą szerokość, lub liczba dziesiętna w przeciwnym wypadku (alias group).
eip EIP Wskaźnik do instrukcji.
esp ESP Wskaźnik do stosu.
etime ELAPSED Wartość czasu, jaki minął od uruchomienia procesu w formacie [[DD-]hh:]mm:ss.
etimes ELAPSED Wartość czasu, jaki minął od uruchomienia procesu w sekundach.
euid EUID Efektywny identyfikator użytkownika (alias uid).
euser EUSER Efektywny identyfikator użytkownika Będzie to tekstowa nazwa użytkownika, jeśli jest dostępna i szerokość pola jest wystarczająca, lub liczba dziesiętna w przeciwnym wypadku (aliasy uname, user).
f F Flagi skojarzone z procesem, patrz sekcja FLAGI PROCESU (aliasy flag, flags).
fgid FGID ID grupy dostępu do systemu plików (alias fsgid).
fgroup FGROUP ID grupy dostępu do systemu plików. Będzie to identyfikator tekstowy, jeśli jest znany, a pole ma wystarczającą szerokość, lub liczba dziesiętna w przeciwnym wypadku (alias fsgroup).
flag F Patrz f (aliasy f, flags).
flags F Patrz f (aliasy f, flag).
fname COMMAND Pierwszych 8 bajtów nazwy pliku wykonywalnego procesu. Wyjście w tej kolumnie może zawierać spacje.
fuid FUID ID użytkownika dostępu do systemu plików (alias fsuid).
fuser FUSER ID użytkownika dostępu do systemu plików. Będzie to tekstowa nazwa użytkownika, jeżeli jest dostępna, a szerokość pola jest wystarczająca, lub liczba dziesiętna w przeciwnym wypadku.
gid GID Patrz egid (alias egid).
group GROUP Patrz egroup (alias egroup).
ignored IGNORED Maska ignorowanych sygnałów, patrz signal(7). Zgodnie z szerokością pola, wyświetlana jest jako 32- lub 64-bitowa maska w formacie liczby szesnastkowej (aliasy sig_ignore, sigignore).
ipcns IPCNS Unikatowy numer i-węzła opisujący przestrzeń nazw, do której należy proces. Patrz namespaces(7).
label LABEL Etykieta bezpieczeństwa, najczęściej używana w danych kontekstowych SELinuksa. Jest to potrzebne dla Mandatory Access Control ("MAC"), występującego w systemach o wysokim bezpieczeństwie.
lstart STARTED Czas uruchomienia systemu. Patrz także bsdstart, start, start_time, oraz stime.
lsession SESSION Wyświetla identyfikator sesji logowania procesu, jeśli zostało włączone wsparcie dla systemd.
lwp LWP Identyfikator LWP [light weight process (lub thread)] samodzielnego podmiotu (dispatchable entity) (aliasy spid, tid). Dodatkowe informacje można znaleźć w opisie tid.
machine MACHINE Wyświetla nazwę maszyny dla procesu przypisanego do maszyny wirtualnej lub zasobnika, jeśli zostało włączone wsparcie dla systemd.
maj_flt MAJFLT Liczba większych błędów stron, które wystąpiły w tym procesie.
min_flt MINFLT Liczba mniejszych błędów stron, które wystąpiły w tym procesie.
mntns MNTNS Unikatowy numer i-węzła opisujący przestrzeń nazw, do której należy proces. Patrz namespaces(7).
netns NETNS Unikatowy numer i-węzła opisujący przestrzeń nazw, do której należy proces. Patrz namespaces(7).
ni NI Wartość nice procesu. Zakres od 19 (najmilszy) to -20 (niemiły dla innych), patrz nice(1) (alias nice).
nice NI Patrz ni (alias ni).
nlwp NLWP Liczba LWP-ów (wątków) procesu (alias thcount).
nwchan WCHAN Adres funkcji jądra, w której proces został uśpiony (proszę użyć wchan, aby dostać nazwę funkcji jądra). Zadania obecnie uruchomione będą miały w tej kolumnie wyświetlony myślnik ("-").
ouid OWNER Wyświetla uniksowy identyfikator użytkownika będącego właścicielem sesji procesu, jeśli zostało włączone wsparcie dla systemd.
pcpu %CPU Patrz %cpu (alias %cpu).
pending PENDING Maska oczekujących sygnałów, patrz signal(7). Sygnały oczekujące procesu są inne niż sygnały oczekujące jego poszczególnych wątków. Aby zobaczyć oba rodzaje, prosimy użyć opcji m lub -m. Zgodnie z szerokością pola, wyświetlana jest jako 32- lub 64-bitowa maska w formacie liczby szesnastkowej (alias sig).
pgid PGID ID grupy procesów lub - równoważnie - ID procesu będącego przywódcą grupy procesów (alias pgrp).
pgrp PGRP Patrz pgid (alias pgid).
pid PID Liczba oznaczająca identyfikator procesu (alias tgid).
pidns PIDNS Unikatowy numer i-węzła opisujący przestrzeń nazw, do której należy proces. Patrz namespaces(7).
pmem %MEM Patrz %mem (alias %mem).
policy POL Klasa schedulera procesu (aliasy class, cls). Możliwe wartości pola: "" 2 - nieraportowany TS SCHED_OTHER FF SCHED_FIFO RR SCHED_RR B SCHED_BATCH ISO SCHED_ISO IDL SCHED_IDLE ? wartość nieznana
ppid PPID Identyfikator procesu-rodzica.
pri PRI Priorytet procesu. Większe wartości oznaczają niższy priorytet.
psr PSR Procesor, do którego proces jest obecnie przypisany.
rgid RGID Rzeczywisty identyfikator grupy.
rgroup RGROUP Nazwa rzeczywistej grupy. Będzie to tekstowa nazwa grupy, jeśli jest dostępna i szerokość pola jest wystarczająca, lub liczba dziesiętna w przeciwnym wypadku.
rss RSS Resident set size, czyli niewyswapowana pamięć, której zadanie używało w kilobajtach) (alias rssize, rsz).
rssize RSS Patrz rss (aliasy rss, rsz).
rsz RSZ Patrz rss (aliasy rss, rssize).
rtprio RTPRIO Priorytet czasu rzeczywistego.
ruid RUID Rzeczywisty identyfikator użytkownika.
ruser RUSER Rzeczywisty identyfikator użytkownika. Będzie to tekstowa nazwa użytkownika, jeśli jest dostępna i szerokość pola jest wystarczająca, lub liczba dziesiętna w przeciwnym wypadku.
s S Wyświetla stan procesu w minimalnej postaci (jeden znak). Znaczenie wartości opisano w rozdziale KODY STANU PROCESU. Aby wyświetlić dodatkowe informacje, patrz opis stat alias state).
sched SCH Zasady planowania (scheduling policy) procesu. Zasady SCHED_OTHER (SCHED_NORMAL), SCHED_FIFO, SCHED_RR, SCHED_BATCH, SCHED_ISO i SCHED_IDLE są wyświetlane jako odpowiednio 0, 1, 2, 3, 4 i 5.
seat SEAT Wyświetla identyfikator skojarzony ze wszystkimi urządzeniami sprzętowymi, przypisanymi do określonego miejsca pracy jeśli zostało włączone wsparcie dla systemd.
sess SESS ID sesji bądź - równoważnie - ID procesu przywódcy sesji (aliasy session, sid).
sgi_p P Procesor, na którym proces się obecnie wykonuje. Wyświetla "*", jeśli proces nie jest obecnie wykonywany ani nie jest zdatny do wykonywania.
sgid SGID Zachowany identyfikator grupy (alias svgid).
sgroup SGROUP Rzeczywisty identyfikator grupy. Będzie to tekstowa nazwa grupy, jeśli jest dostępna i szerokość pola jest wystarczająca, lub liczba dziesiętna w przeciwnym wypadku.
sid SID Patrz sess (aliasy sess, session).
sig PENDING Patrz pending (aliasy pending, sig_pend).
sigcatch CAUGHT Patrz caught (aliasy caught, sig_catch).
sigignore IGNORED Patrz ignored (aliasy ignored, sig_ignore).
sigmask BLOCKED Patrz blocked (aliasy blocked, sig_block).
size SIZE Szacowana ilość przestrzeni wymiany, która byłaby wymagana, gdyby proces zajął wszystkie zapisywalne strony, a następnie by został przeniesiony do przestrzeni wymiany. Ilość ta jest bardzo przybliżona!
slice SLICE Wyświetla jednostkę plastra (slice), do którego należy proces, jeśli zostało włączone wsparcie dla systemd.
spid SPID Patrz lwp (alias lwp, tid).
stackp STACKP Adres początku stosu procesu.
start STARTED Czas od uruchomienia polecenia. Jeśli proces został uruchomiony mniej niż 24 godziny temu, formatem wyjścia jest "HH:MM:SS", w przeciwnym wypadku jest to "  Mmm dd" (gdzie Mmm oznacza trzyliterowy skrót nazwy miesiąca). Patrz także lstart, bsdstart, start_time oraz stime.
start_time START Czas lub data uruchomienia procesu. Wyświetlony będzie tylko rok, jeśli proces nie został uruchomiony w tym samym roku, w którym wywołano ps, lub "MmmDD", jeśli nie został uruchomiony w tym samym dniu, lub "HH:MM" w przeciwnym wypadku. Patrz także bsdstart, start, lstart, oraz stime.
stat STAT Wieloznakowy stan procesu. Znaczenie wartości opisano w rozdziale KODY STANU PROCESU. Aby wyświetlić tylko pierwszy znak, patrz opis s i state
state S Patrz s (alias s).
suid SUID Zachowany identyfikator użytkownika (alias svuid).
supgid SUPGID Identyfikatory dodatkowych grup, jeśli takowe występują. Patrz getgroups(2).
supgrp SUPGRP Nazwy dodatkowych grup, jeśli występują. Patrz getgroups(2).
suser SUSER Zachowany identyfikator użytkownika Będzie to tekstowa nazwa użytkownika, jeśli jest dostępna i szerokość pola jest wystarczająca, lub liczba dziesiętna w przeciwnym wypadku (alias svuser).
svgid SVGID Patrz sgid (alias sgid).
svuid SVUID Patrz suid (alias suid).
sz SZ Rozmiar w fizycznych stronach głównego obrazu pamięci procesu, włączając w to obszary tekstu, danych i przestrzeń stosu. Obecnie nie obejmuje to mapowań urządzeń, ale może się to zmienić w przyszłości. Patrz vsz oraz rss.
tgid TGID Liczba reprezentująca grupę wątków, do której należy zadanie (alias pid). Jest to identyfikator procesu przywódcy grupy wątków.
thcount THCNT Patrz nlwp (alias nlwp). Liczba wątków jądra, których proces jest właścicielem.
tid TID Unikatowa liczba reprezentująca samodzielny podmiot (dispatchable entity) (alias lwp, spid). Ta wartość może się także pojawić jako identyfikator procesu (pid); identyfikator grupy procesów (pgrp); identyfikator sesji lidera sesji (sid); identyfikator grupy wątków dla lidera grupy wątków (tgid); identyfikator grupy procesów terminala dla lidera grupy procesów (tpgid).
time TIME Łączny czas CPU w formacie "[DD-]HH:MM:SS" (alias cputime).
tname TTY Kontrolujący tty (terminal) (aliasy tt, tty).
tpgid TPGID ID pierwszoplanowej grupy procesów na tty (terminalu), do której proces jest podłączony, lub -1, jeśli proces nie jest podłączony do terminala.
trs TRS Resident set size teksu, czyli ilość fizycznej pamięci przeznaczona na kod wykonywalny.
tt TT Kontrolujący tty (terminal) (aliasy tname, tty).
tty TT Kontrolujący tty (terminal) (aliasy tname, tt).
ucmd CMD Patrz comm (aliasy comm, ucomm).
ucomm COMMAND Patrz comm (aliasy comm, ucmd).
uid UID Patrz euid (alias euid).
uname USER Patrz euser (aliasy euser, user).
unit UNIT Wyświetla jednostkę, do której należy proces, jeśli zostało włączone wsparcie dla systemd.
user USER Patrz euser (aliasy euser, uname).
userns USERNS Unikatowy numer i-węzła opisujący przestrzeń nazw, do której należy proces. Patrz namespaces(7).
utsns UTSNS Unikatowy numer i-węzła opisujący przestrzeń nazw, do której należy proces. Patrz namespaces(7).
uunit UUNIT Wyświetla jednostkę użytkownika, do której należy proces, jeśli zostało włączone wsparcie dla systemd.
vsize VSZ Patrz vsz (alias vsz).
vsz VSZ Użycie wirtualnej pamięci dla całego procesu w KiB (jednostka 1024-bajtowa). Obecnie nie obejmuje to mapowań urządzeń, ale może się to zmienić w przyszłości (alias vsize).
wchan WCHAN Nazwa funkcji jądra, w której proces jest uśpiony, lub "-", jeśli proces jest wykonywany, lub "*", jeśli proces jest wielowątkowy, a ps nie wyświetla wątków.

Następujące zmienne środowiska mogą mieć wpływ na ps:

Nadpisuje domyślną szerokość wyjścia.
Nadpisuje domyślną wysokość wyjścia.
Jedno z posix, old, linux, bsd, sun, digital... (patrz poniżej sekcja OSOBOWOŚĆ).
Jedno z posix, old, linux, bsd, sun, digital... (patrz poniżej sekcja OSOBOWOŚĆ).
Wymusza przestarzałą interpretację linii poleceń.
Format daty.
Obecnie nieobsługiwana.
Nadpisanie domyślnego formatu wyjścia. Można ustawić tę zmienną na dowolny typ formatowania używany przez opcję -o. Szczególnie użyteczne są wartości DefSysV i DefBSD.
Domyślna lokalizacja pliku nazw (System.map).
Domyślna lokalizacja pliku nazw (System.map).
Nie ignoruje złych opcji.
Ustawione na "on", działa tak, jak POSIXLY_CORRECT.
Nie ignoruje złych opcji.
_XPG
Wyłącza niestandardowe zachowanie CMD_ENV=irix.

Ogólnie, ustawianie tych zmiennych jest złym pomysłem. Jedynym wyjątkiem jest CMD_ENV lub PS_PERSONALITY, które dla normalnych systemów mogą być ustawione na wartość "Linux". Bez tego ustawienia, ps jest zgodny z nieużytecznymi i złymi częściami standardu Unix98.

390 jak ps z S/390 OpenEdition
aix jak ps z AIX
bsd jak ps z FreeBSD (zupełnie niestandardowy)
compaq jak ps z Digital Unix
debian jak ps ze starego Debiana
digital jak ps z Tru64 (wcześniej Digital Unix, wcześniej OSF/1)
gnu jak ps ze starego Debiana
hp jak ps z HP-UX
hpux jak ps z HP-UX
irix jak ps z Irix
linux ***** zalecany *****
old jak ps z oryginalnego Linuksa (zupełnie niestandardowy)
os390 jak ps z OS/390 Open Edition
posix standardowy
s390 jak ps z OS/390 Open Edition
sco jak ps z SCO
sgi jak ps z Irix
solaris2 jak ps z Solaris 2+ (SunOS 5)
sunos4 jak ps z SunOS 4 (Solaris 1) (zupełnie niestandardowy)
svr4 standardowy
sysv standardowy
tru64 jak ps z Tru64 (wcześniej Digital Unix, wcześniej OSF/1)
unix standardowy
unix95 standardowy
unix98 standardowy

pgrep(1), pstree(1), top(1), proc(5).

Ta wersja programu ps jest zgodna z:

1
Wersją drugą Single Unix Specification
2
The Open Group Technical Standard Base Specifications, Issue 6
3
IEEE Std 1003.1, 2004 Edition
4
X/Open System Interfaces Extension [UP XSI]
5
ISO/IEC 9945:2003

ps początkowo był napisany przez Branko Lankestera. Michael K. Johnson znacząco go zmodyfikował, aby używał systemu plików proc. Michael Shields dodał właściwość pid-listy. Charles Blake dodał wielopoziomowe sortowanie, bibliotekę w stylu dirent, bazę mapowań nazwy na numer dla urządzeń, szukanie bezpośrednio w System.map i sporo usprawnień estetycznych i oczyszczeń w kodzie źródłowym i dokumentacji. David Mossberger-Tang napisał wsparcie BFD dla psupdate. Albert Cahalan przepisał ps dla pełnego wsparcia Unix98 i BSD, wraz z pewnymi brzydkimi hackami dla przestarzałej i obcej składni.

Proszę przesyłać zgłoszenia o błędach do procps@freelists.org. Subskrybowanie tej listy nie jest wymagane ani sugerowane.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Przemek Borys (PTM) <pborys@dione.ids.pl> i Robert Luberda <robert@debian.org>.

Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 3.3.10 oryginału.

lipiec 2014 procps-ng