JMÉNO
pgrep, pkill − vyhledává procesy, nebo posílá procesům signály, podle jména a jiných vlastností
POUŽITÍ
pgrep
[−flvx] [−d oddělovač]
[−n|−o] [−P ppid,...] [−g
pgrp,...]
[−s sid,...] [−u euid,...]
[−U uid,...] [−G gid,...]
[−t terminál,...] [vzor]
pkill
[−signál] [−fvx]
[−n|−o] [−P ppid,...] [−g
pgrp,...]
[−s sid,...] [−u euid,...]
[−U uid,...] [−G gid,...]
[−t terminál,...] [vzor]
POPIS
pgrep prohledává běžící procesy a vypisuje ID procesů, které vyhovují zadaným kritériím. Musí souhlasit všechna kritéria. Např.
pgrep −u root sshd
vypíše jenom procesy které se jmenují sshd a zároveň je jejich vlastníkem root. Na druhou stranu,
pgrep −u root,daemon
vypíše procesy vlastněné uživatelem root nebo uživatelem daemon.
pkill posílá zadaný signál (standartně SIGTERM) každému vyhovujícímu procesu místo vypisování na standartní výstup.
VOLBY
−d oddělovač
Nastavuje použitý oddělovač mezi čísly procesů na výstupu (standartně je použit znak nového řádku). (Dostupné pouze v pgrepu.)
−f |
Vzor je normálně vyhledáván pouze ve jménech procesů. S přepínačem −f se vyhledává v celém příkazu, kterým byly spuštěny. |
−g skupina−procesů,...
Vyhoví procesy, které jsou součástí skupiny−procesů. Skupina procesů 0 je pgrep nebo pkill sám.
−G id−skupiny,...
Vyhoví procesy, jejichž GID (identifikační číslo skupiny) odpovídá vzoru. Může být zadán jak číselně, tak symbolicky.
−l |
Kromě ID procesů vypíše i jejich jména. (Dostupné pouze v pgrepu.) | ||
−n |
Vybere pouze nejnovější (naposledy spuštěný) proces, který vyhovuje podmínkám. | ||
−o |
Vybere pouze nejstarší (nejdříve spuštěný) proces, který vyhovuje podmínkám. |
−P id−rodičovského−procesu,...
Vyhoví pouze procesy, jejihž rodič je id−rodičovského procesu.
−s id−relace,...
Vyhoví jenom procesy, které jsou součástí dané relace. Ralace 0 je interpretována jako relace samotného pgrepu nebo pkillu.
−t terminál,...
Vyhoví pouze procesy, které jsou spuštěny na daném terminálu. Jméno terminálu může být specifikováno s prefixem "/dev/".
−u euid,...
Vyhoví pouze procesy s odpovídajícím efektivním uživatelským ID. Může být použita číselná i symbolická hodnota.
−U uid,...
Vyhoví pouze procesy s odpovídajícím uživatelským ID. Může být použita číselná i symbolická hodnota.
−v |
Vypíše všechny procesy, které neodpovídají zadání. | ||
−x |
Vyhoví pouze procesy, jejichž jméno (nebo, pokud je použito −f, příkaz) přesně odpovídá vzoru. |
−signál
Definuje signál, který je poslán všem vyhovujícím procesům. Může být použita jak číselná, tak symbolická hodnota. (Dostupné pouze v pkillu.)
OPERANDY
vzor |
Specifikuje rozšířený regulární výraz, který je porovnáván se jmény procesů, nebo jejich příkazy. |
PŘÍKLADY
Příklad 1: Vyhledá procesy jménem jméno vlastněné uživatelem root:
unix$ pgrep −u root jméno
Příklad 2: Přinutí syslog znovu načíst svůj konfigurační soubor:
unix$ pkill −HUP syslogd
Příklad 3: Vypíše detailní informace o všech procesech xterm:
unix$ ps −fp $(pgrep −d, −x xterm)
Příklad 4: Všechny procesy netscape přinutí běžet lépe:
renice +4 ’pgrep netscape’
NÁVRATOVÁ HODNOTA
0 |
Podmínkám vyhovuje alespoň jeden proces. |
|||
1 |
Žádný proces nevyhovuje zadaným podmínkám. |
|||
2 |
Chyba v syntaxi na příkazovém řádku. |
|||
3 |
Závažná chyba: nedostatek paměti apod. |
POZNÁMKY
Jména procesů pro porovnání jsou maximálně 15 znaků dlouhá, protože se berou ze suboru /proc/pid/stat. Pro delší jména použijte parametr −f, který bere informace ze souboru /proc/pid/cmdline.
Běžící pgrep nebo pkill nikdy nevrátí sám sebe jako výsledek.
CHYBY
Přepínače −n, −o a −v nemohou být kombinovány. Pokud to budete potřebovat, dejte mi vědět.
Vypisuje i zaniklé procesy (zombie).
DALŠÍ INFORMACE
ps(1) regex(7) signal(7) killall(1) skill(1) kill(1) kill(2)
STANDARDY
pkill a pgrep se poprvé objevily v Solarisu 7. Tato implementace je plně kompatibilní.
AUTOR
Kjetil Torgrim Homme <kjetilho [AT] ifi.no>
Albert Cahalan <albert [AT] users.net> je údržbář balíku procps.
Chyby týkající se programu prosím zasílejte na <procps−feedback [AT] lists.net>