Kill

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

kill - Skicka signaler till processer

Kommandot `kill` används för att skicka signaler till processer i ett Unix-liknande operativsystem. Den vanligaste användningen är att avsluta processer.

Syntax

kill [ALTERNATIV] PID...

Beskrivning

Kommandot `kill` används för att skicka signaler till en eller flera processer. Standardinställningen är att skicka signalen TERM (15), vilket avslutar processen. Andra signaler kan specificeras för att utföra olika åtgärder, såsom att stoppa, pausa eller fortsätta en process.

Alternativ

Kommandot `kill` stöder flera alternativ som kan användas för att justera vilken signal som skickas och hur kommandot utförs:

  • -s, --signal SIGNAL - Specificera vilken signal som ska skickas (signalnamn eller nummer).
  • -l, --list [SIGNAL] - Lista signalnamn och -nummer. Om SIGNAL är angivet, visa information om den specifika signalen.
  • -L, --table - Visa en tabell över alla signaler.
  • -q, --queue VALUE - Skicka en realtidssignal med ett värde.
  • --help - Visa hjälpmeddelande och avsluta.
  • --version - Visa versionsinformation och avsluta.

Signaler

Vanliga signaler som kan skickas med `kill`:

  • **1 (HUP)** - Återläs processens konfigurationsfiler.
  • **2 (INT)** - Avbryt processen (motsvarar Ctrl+C).
  • **9 (KILL)** - Tvinga omedelbar avslutning av processen.
  • **15 (TERM)** - Avsluta processen på ett ordnat sätt (standard).
  • **18 (CONT)** - Fortsätt en pausad process.
  • **19 (STOP)** - Pausa processen.

Exempel

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

  • För att avsluta en process med PID 1234:

kill 1234

  • För att tvinga avslutning av en process med PID 1234:

kill -9 1234

  • För att skicka signalen HUP till en process med PID 1234:

kill -1 1234

  • För att lista alla tillgängliga signaler:

kill -l

  • För att skicka signalen STOP till flera processer:

kill -STOP 1234 5678

  • För att fortsätta en pausad process med PID 1234:

kill -CONT 1234

Skillnader mellan macOS och Linux

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

  • Signaluppsättning: Både macOS och Linux stöder de flesta vanliga signaler, men det kan finnas skillnader i tillgängligheten och beteendet hos vissa mindre vanliga signaler. Det är alltid bra att kontrollera `man kill` för din specifika plattform.
  • Alternativ och funktioner: Grundläggande funktioner och alternativ i `kill` är liknande på både macOS och Linux. Vissa versioner av `kill` kan dock ha ytterligare alternativ beroende på distribution och version.
  • Användarupplevelse: Utseendet och beteendet för kommandot kan variera något beroende på terminalemulator och skalkonfiguration, men den grundläggande funktionaliteten är densamma.

Det är alltid bra att konsultera `man`-sidan för `kill` 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 `kill`, kontrollera följande:

  • Att du har rätt att skicka signaler till den specifika processen (använd `sudo` om nödvändigt).
  • Att PID som du försöker skicka en signal till är korrekt och att processen existerar.
  • Att signalen du försöker skicka är tillgänglig och korrekt angiven.

Se även

  • pkill - Skicka signaler till processer baserat på namn och andra attribut.
  • killall - Skicka signaler till alla processer som matchar ett namn.
  • ps - Visa information om aktiva processer.
  • top - Visar systemets processoraktivitet och resurser i realtid.

Källor