kill (Unix)

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Příkaz kill je jeden ze základních příkazů na unixových systémech. Slouží k posílání signálů procesům. Je součástí standardu POSIX IEEE 1003.1.

Volání[editovat | editovat zdroj]

kill pid sig

Kde pid je číslo procesu a sig číslo signálu.

Popis[editovat | editovat zdroj]

Příkaz kill posílá signál jednomu nebo více procesů. Parametr sig je číslo signálu, který se má poslat nebo číslo 0. Signál 0 umožňuje ověřit správnost argumetu pid, tj. číslo procesu. Pokud je pid větší než 0, odešle se signál sig procesu identifikovanému pomocí pid. Pokud se pid rovná 0, sig se pošle na všechny procesu v aktuální skupině. Pokud se pid rovná -1, odešle se signál na všechny procesy s číslem větší než jedna. Pokud je pid menší než -1 pošle se sig na všechny procesy s číslem skupiny rovným absolutní hodnotě pid. Příkaz pracuje s přístupovými právy volajícího procesu.

Návratové hodnoty[editovat | editovat zdroj]

V případě úspěchu vrátí 0, v případě neúspěchu -1 a hodnota uložená v errno značí druh chyby.

Chybové hodnoty[editovat | editovat zdroj]

Pokud kill vrátí -1, v errno je uložena jedna z hodnot:

  • EINVAL: sig je neplatné číslo signálu
  • EPERM: proces nemá práva posílat signál sig procesu s číslem pid
  • ESRCH: neexistuje proces nebo skupina s odpovídajícím pid.