Arch manual pages

PGREP(1) Linux - Příručka uživatele PGREP(1)

pgrep, pkill - vyhledává procesy, nebo posílá procesům signály, podle jména a jiných vlastností

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]

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.

-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.)

vzor
Specifikuje rozšířený regulární výraz, který je porovnáván se jmény procesů, nebo jejich příkazy.

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`

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.

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.

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).

ps(1) regex(7) signal(7) killall(1) skill(1) kill(1) kill(2)

pkill a pgrep se poprvé objevily v Solarisu 7. Tato implementace je plně kompatibilní.

Kjetil Torgrim Homme <kjetilho@ifi.uio.no>

Albert Cahalan <albert@users.sf.net> je údržbář balíku procps.

Chyby týkající se programu prosím zasílejte na <procps-feedback@lists.sf.net>

25.červen 2000 Linux