Příkaz pkill odešle libovolný zadaný signál, nebo ve výchozím nastavení ukončovací signál, procesům na základě shodného vzoru. Podobné příkazu pgrep, ale ve skutečnosti posílá signál místo tisku na stdout. Pokud například začnete top v jednom terminálu a pak vydáte pkill top v jiném terminálu, uvidíte, že top skončí. Příkaz se shodoval se vzorem názvu spíše než s ID procesu.
Syntaxe
Syntaxe tohoto příkazu je:
# pkill [options] {pattern}
Příkazy kill a pkill vysílají signály procesům, které je nasměrují k ukončení. Každý signál má číslo, název a přidruženou událost. Níže jsou uvedeny některé z nejčastěji používaných signálů s jejich funkcemi.
Číslo | Jméno | Popis |
---|---|---|
1 | SIGHUP | Znovu načíst konfigurační soubor |
2 | SIGINT | Přerušení klávesnicí (ctrl+c) |
9 | SIGKILL | zabít proces |
15 | SIGTERM | Okamžitě ukončete proces. (Ukončete proces kontrolovaným způsobem, aby bylo možné vyčištění) |
18 | SIGCONT | Pokračujte v procesu zastaveném pomocí STOP |
19 | STOP | Zastavit proces |
Příklady příkazů pkill
1. Zabijte všechny procesy, které odpovídají:
# pkill "process_name"
2. Zabijte všechny procesy, které odpovídají jejich úplnému příkazu namísto pouhého názvu procesu:
# pkill -f "command_name"
3. Vynutit proces shody zabíjení (nelze blokovat):
# pkill -9 "process_name"
4. Odešlete signál SIGUSR1 procesům, které odpovídají:
# pkill -USR1 "process_name"
5. Ukončete hlavní proces `firefox` pro zavření prohlížeče:
# pkill --oldest "firefox"
6. Příkaz pkill lze použít k odeslání signálu procesům běžícím z konkrétního řídicího terminálu, jak je znázorněno v následující syntaxi:
# pkill -t [terminal_name] -U UID [command_pattern]