pidof
je nástroj příkazového řádku, který vám umožňuje najít ID procesu běžícího programu.
V tomto článku vysvětlíme, jak používat Linux pidof
příkaz.
Jak používat pidof
Příkaz #
Existují různé implementace pidof
pro distribuce založené na Red Hatu a Debianu. V distribucích Red Hat, pidof
příkaz je součástí procps-ng
balíček, zatímco v Debianu je součástí sysvinit-utils
. Projdeme si možnosti, které jsou společné pro obě implementace.
Syntaxe pro pidof
příkaz je následující:
pidof [OPTIONS] PROGRAM_NAME
Příkaz přijímá nula nebo více jmen jako argumenty, ale obvykle byste do pidof
předali pouze jedno jméno. .
Při vyvolání bez možnosti pidof
vytiskne PID všech spuštěných programů, které odpovídají zadanému názvu. Chcete-li například najít PID serveru SSH, spustili byste:
pidof sshd
Pokud jsou spuštěny procesy s názvy odpovídajícími sshd
, jejich PID se zobrazí na obrazovce. Pokud nebudou nalezeny žádné shody, výstup bude prázdný.
4382 4368 811
pidof
vrátí 0
když se alespoň jeden spuštěný program shoduje s požadovaným názvem. Jinak je výstupní kód 1
. To může být užitečné při psaní skriptů shellu.
Abyste měli jistotu, že se zobrazí pouze PID programu, který hledáte, použijte jako argument úplnou cestu k programu. Například, pokud máte dva spuštěné programy se stejným názvem umístěné ve dvou různých adresářích pidof
zobrazí PID obou spuštěných programů.
Ve výchozím nastavení jsou zobrazeny všechny PID odpovídajících běžících programů. Použijte -s
možnost vynutit pidof
pro zobrazení pouze jednoho PID:
pidof -s program_name
-o
volba umožňuje vyloučit proces s daným PID z výstupu příkazu:
pidof -o pid program_name
Když pidof
se vyvolá pomocí -o
můžete použít speciální PID s názvem %PPID
který představuje volající shell nebo skript shellu.
Chcete-li vrátit pouze PID procesů, které běží se stejným kořenovým adresářem, použijte -c
možnost.
Tato možnost funguje pouze pidof
je spuštěn jako root nebo sudo
uživatel:
pidof -c pid program_name
Příklad použití pidof
Příkaz #
Následující příklad ukazuje, jak používat pidof
příkaz v kombinaci s kill
příkaz k ukončení programu.
Řekněme, že prohlížeč Firefox přestane reagovat a musíte ukončit procesy Firefoxu. Nejprve najděte PID pomocí pidof
:
pidof firefox
Příkaz vytiskne všechny procesy Firefoxu:
2551 2514 1963 1856 1771
Jakmile budete vědět, že Firefox zpracovává PID, odešlete SEGTERM
signál k ukončení všech z nich:
sudo kill -9 2551 2514 1963 1856 1771
Můžete také použít příkazový substituční výraz $(...)
, pro ukončení programu jedním příkazem:
sudo kill -9 $(pidof firefox)
Závěr č.
pidof
příkaz se používá ke zjištění PID konkrétního běžícího programu.
pidof
je jednoduchý příkaz, který nemá mnoho možností. Obvykle zavoláte pidof
pouze s názvem programu, který hledáte.
Pokud máte nějaké dotazy nebo zpětnou vazbu, neváhejte zanechat komentář.