Pomocí příkazu killall je také možné posílat signály více procesům, které odpovídají zadanému programu nebo uživatelskému jménu. Zde je syntaxe:
# killall [-u user] [-signal] name...
Pro demonstraci spustíme několik instancí programu spánku a poté je ukončíme.
$ sleep 500 & [1] 18801 $ sleep 600 & [2] 18802
$ killall sleep [1]- Terminated sleep [2]+ Terminated sleep
Pamatujte, že stejně jako u kill musíte mít oprávnění superuživatele k odesílání signálů procesům, které vám nepatří.
Příklady příkazů killall
1. Chcete-li zrušit všechny zadané příkazy:
# killall
2. Seznam všech známých signálů:
# killall -l # killall --list
3. Nestěžujte si, pokud nebyly zabity žádné procesy:
# killall -q # killall --quiet
4. Chcete-li odeslat specifikovaný signál místo SIGTERM:
# killall -s 9 bash # killall --signal 9 bash
5. Chcete-li zabít procesy vlastněné konkrétním uživatelem:
# killall -u mike
6. Chcete-li nastavit podrobný režim:
# killall -v # killall --verbose
7. Zobrazení verze:
# killall -V # killall --version
8. Chcete-li určit, že se má čekat na ukončení všech zabitých procesů:
# killall -w # killall --wait
9. Chcete-li ukončit procesy se zadaným kontextem zabezpečení:
# killall -Z # killall --context
10. Interaktivně požádat o potvrzení před ukončením:
# killall -i process_name
11. Ukončete proces pomocí signálu SIGINT (přerušení), což je stejný signál odeslaný stisknutím `Ctrl + C`:
# killall -INT process_name
12. Vynutit ukončení procesu:
# killall -KILL process_name
Závěr
Příkazy často používané ve spojení s ps jsou kill a killall. Při spuštění ps jsme viděli, že existuje sloupec, který zobrazuje PID, což je zkratka pro ID procesu. Pokud proces neběží správně, visí nebo jej chceme ukončit, jedním ze způsobů je použití příkazu kill. Jednoduše mu předejte PID, například s PID 123:
# kill 123
Pokud chcete proces porovnat podle názvu místo PID, můžete použít killall, například pokud Firefox zamrzl a my jsme chtěli vynutit ukončení:
# killall firefox