GNU/Linux >> Znalost Linux >  >> Linux

Linux pkill Command Tutorial pro začátečníky (5 příkladů)

Pokud v Linuxu potřebujete zabít proces (z jakéhokoli důvodu) prostřednictvím příkazového řádku, můžete použít příkaz kill, který vyžaduje, abyste jako vstup předali ID procesu, který se pokoušíte ukončit. Věděli jste ale, že existuje také způsob, jak zabít procesy bez zadání jejich PID?

Ano, existuje nástroj – nazvaný pkill - to vám umožní. V tomto článku probereme základy tohoto příkazu pomocí několika snadno srozumitelných příkladů. Ale než to uděláme, stojí za zmínku, že všechny příklady zde byly testovány na počítači Ubuntu 18.04 LTS a Debian 10.

Příkaz pkill pro Linux

Příkaz pkill v Linuxu je v podstatě jednodušší způsob, jak zabít procesy. Následuje jeho syntaxe:

pkill [options] pattern

A zde je to, co o tomto nástroji říká manuálová stránka:

pkill - signal processes based on name and other attributes

Následuje několik příkladů ve stylu otázek a odpovědí, které by vám měly poskytnout lepší představu o tom, jak příkaz pkill funguje.

O1. Jak používat příkaz pkill?

Základní použití je docela přímočaré – vše, co musíte udělat, je spustit „pkill“ s názvem procesu jako vstupem.

Pokud se například pokoušíte zabít proces 'gedit', můžete to udělat pomocí pkill následujícím způsobem:

pkill gedit

A je to. Uvidíte, že proces gedit (pokud běží) bude po provedení výše uvedeného příkazu zabit.

Q2. Jak přimět pkill vysílat jiný signál?

Jak již bylo zmíněno na začátku tohoto článku, příkaz pkill v podstatě vysílá signál procesu. Ve výchozím nastavení se odesílá signál SIGTERM, ale pokud chcete, můžete signál změnit pomocí možnosti příkazového řádku --signal.

Například:

pkill --signal SIGKILL gedit

Q3. Jak zabíjet procesy založené na úplném příkazovém řádku?

Ve výchozím nastavení se název vstupu (vzor) shoduje s názvem procesu. Pokud však chcete, můžete místo toho nastavit pkill tak, aby odpovídal úplnému příkazovému řádku. To lze provést pomocí volby příkazového řádku -f.

Řekněme například, že v mém systému běží dva příkazy ping. Následuje výňatek z výstupu příkazu ps:

...
root 19253 0.0 0.1 9180 2916 pts/1 S+ 19:24 0:00 ping google.com
root 19331 0.0 0.1 9180 2912 pts/2 S+ 19:25 0:00 ping howtoforge.com
...

Nyní předpokládejme, že požadavkem je pouze zabít příkaz 'ping google.com' pomocí pkill.

Pokud používáte pkill následujícím způsobem:

pkill ping

pak budou oba příkazy zabity. Abychom tomu zabránili, můžeme použít volbu -f příkazového řádku. Zde je návod, jak jej lze použít:

pkill -f "ping google.com"

Provedl jsem příkaz v prvním okně terminálu:

Výsledek v druhém okně terminálu, kde probíhal proces ping:

Takže když byl proveden výše uvedený příkaz, byl zabit pouze příkaz uvedený jako vstup.

4. Jak učinit pkill case insensitive?

Ve výchozím nastavení příkaz pkill rozlišuje velká a malá písmena, což znamená, že zachází se jmény s velkými a malými písmeny odlišně. Pokud však chcete, můžete přinutit pkill, aby nerozlišoval malá a velká písmena, což můžete udělat pomocí volby příkazového řádku -i.

pkill -i [process-name]

O5. Jak přimět syslog znovu přečíst svůj konfigurační soubor pomocí pkill?

K dosažení tohoto cíle můžete použít příkaz pkill následujícím způsobem:

pkill -HUP syslogd

Závěr

Takže pkill je extrémně užitečný příkaz, pokud jde o zabíjení procesů. Již jsme diskutovali o některých možnostech příkazového řádku, které tento příkaz poskytuje. Jakmile je dokončíte, můžete se o příkazu dozvědět více na jeho manuálové stránce.


Linux
  1. Linux cd command tutorial pro začátečníky (8 příkladů)

  2. Linux Date Command Tutorial pro začátečníky (8 příkladů)

  3. Linux hostname Command Tutorial pro začátečníky (5 příkladů)

  1. Výuka příkazů Linux pro začátečníky (5 příkladů)

  2. Linux df Command Tutorial pro začátečníky (8 příkladů)

  3. Linux du Command Tutorial pro začátečníky (10 příkladů)

  1. Výukový program Linux echo Command pro začátečníky (5 příkladů)

  2. Linux env Command Tutorial pro začátečníky (5 příkladů)

  3. Návod k příkazu velikosti Linuxu pro začátečníky (6 příkladů)