Available in

(1) (1)/cs (1)/fr (1)/ja

Contents

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>

COMMENTS

blog comments powered by Disqus