Killall

Från Wiki.linux.se
Version från den 27 maj 2024 kl. 14.49 av Admin (diskussion | bidrag)
(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till navigering Hoppa till sök

killall - Döda processer baserat på namn

Kommandot `killall` används för att skicka signaler till processer baserat på deras namn i Unix-liknande operativsystem.

Syntax

killall [ALTERNATIV] NAMN...

Beskrivning

Kommandot `killall` söker efter processer som matchar ett angivet namn och skickar en signal till dessa processer. Standardmässigt skickas signalen SIGTERM, men andra signaler kan anges.

Alternativ

Kommandot `killall` stöder flera alternativ som kan användas för att justera hur processer matchas och vilka signaler som skickas:

  • -e, --exact - Kräva exakt matchning av processnamn.
  • -g, --process-group - Döda processgruppen till processerna.
  • -i, --interactive - Begär bekräftelse innan någon signal skickas.
  • -l, --list - Lista alla signalnamn.
  • -q, --quiet - Visa inga fel om inga processer dödas.
  • -s, --signal SIGNAL - Skicka den angivna signalen istället för SIGTERM.
  • -u, --user ANVÄNDARE - Begränsa till processer som ägs av angiven användare.
  • -v, --verbose - Visa information om vad som dödas.
  • -w, --wait - Vänta tills alla dödade processer har avslutats.
  • --help - Visa hjälpmeddelande och avsluta.
  • --version - Visa versionsinformation och avsluta.

Exempel

Här är några praktiska exempel som visar hur du kan använda `killall`-kommandot:

  • För att döda alla processer med namnet "firefox":

killall firefox

  • För att skicka signalen SIGKILL till alla processer med namnet "apache2":

killall -s SIGKILL apache2

  • För att kräva exakt matchning av processnamn:

killall -e httpd

  • För att döda processer som ägs av användaren "bob":

sudo killall -u bob firefox

  • För att visa signalnamn:

killall -l

  • För att begära bekräftelse innan någon signal skickas:

killall -i chrome

Skillnader mellan macOS och Linux

Det finns några viktiga skillnader att tänka på när man använder `killall`-kommandot på macOS jämfört med Linux:

  • Tillgänglighet: `killall` är tillgängligt både på macOS och Linux, men med vissa skillnader i alternativ och beteende.
  • Alternativ: Vissa alternativ som finns på Linux-versionen av `killall` kan saknas eller ha annorlunda beteende på macOS. Till exempel kan alternativ som `-g` och `-v` inte vara tillgängliga eller fungera annorlunda på macOS.
  • Signalnamn: Signalnamnen och deras beteenden kan skilja sig något mellan macOS och Linux, även om de flesta standardnamn som SIGTERM och SIGKILL är desamma.

Exempel på att använda `killall` på macOS:

  • För att döda alla processer med namnet "Safari":

killall Safari

  • För att skicka signalen SIGKILL till alla processer med namnet "Google Chrome":

killall -s SIGKILL "Google Chrome"

Det är alltid bra att konsultera `man`-sidan för `killall` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga och hur de används.

Felsökning

Om du får ett felmeddelande när du använder `killall`, kontrollera följande:

  • Att du har tillräckliga rättigheter för att skicka signaler till processerna (använd `sudo` om nödvändigt).
  • Att processerna du försöker döda faktiskt existerar och körs.
  • Att du använder rätt syntax och alternativ för ditt specifika kommando.

Se även

  • kill - Skicka signaler till processer.
  • pkill - Döda processer baserat på namn och andra attribut.
  • pgrep - Sök efter processer baserat på namn och andra attribut.

Källor