Hantera processer: `kill`, `bg`, `fg`
Lär Er att effektivt avsluta, pausa och återuppta processer från kommandoraden.
Hantera processer: `kill`, `bg`, `fg` är en gratis lektion i Bemästra Linux-kommandoraden på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Bemästra Linux-kommandoraden, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Bemästra Linux-kommandoraden innehåller totalt 4 lektioner.
Introduktion till processhantering
I Linux kallas varje program som körs för en process. Att hantera dessa processer är viktigt för systemets effektivitet och felsökning.
I den här lektionen får ni lära er att ta kontroll över processer: pausa dem, skicka dem till bakgrunden, ta fram dem igen och även avsluta dem när de inte fungerar som de ska.
Grunderna i kommandot `kill`
Kommandot kill används för att skicka signaler till processer. Det används främst för att avsluta processer.
För att använda kill behöver ni process-ID:t (PID) för målprocessen. Ni kan hitta PID:n med kommandon som ps (som behandlades i en tidigare lektion).
ps aux | grep sleepSkonsam avslutning: `SIGTERM`
Som standard skickar kill signalen SIGTERM (signal 15). Det är en artig begäran om att processen ska avslutas.
Ett välskrivet program fångar upp SIGTERM, utför nödvändig städning (till exempel sparar filer) och avslutas sedan på ett kontrollerat sätt.
sleep 30 &
# Use 'ps' to find the PID of 'sleep 30'
# Example: kill <PID_OF_SLEEP>Tvingad avslutning: `SIGKILL` (-9)
Ibland kan en process ignorera SIGTERM och bli svarslös eller ”fryst”. I sådana fall behöver ni använda en starkare signal: SIGKILL (signal 9).
SIGKILL avslutar processen omedelbart utan att låta den utföra någon städning. Använd den endast som en sista utväg!
sleep 60 &
# Use 'ps' to find the PID of 'sleep 60'
# Example: kill -9 <PID_OF_SLEEP>Pausa processer med Ctrl+Z
Ni kan tillfälligt pausa en körande process i förgrunden med kortkommandot Ctrl+Z.
Detta skickar signalen SIGSTOP, pausar processen och lämnar tillbaka kontrollen till skalet. Processen finns fortfarande i minnet men körs inte.
sleep 120
# Type 'sleep 120' and then press Ctrl+Z
# You will see '[1]+ Stopped sleep 120'Lista jobb med `jobs`
När ni pausar en process eller skickar den till bakgrunden blir den ett ”jobb”. Ni kan lista alla aktuella jobb som hanteras av skalet med kommandot jobs.
Varje jobb tilldelas ett jobbnummer, vilket är användbart när ni hänvisar till det med andra kommandon.
sleep 30
# Press Ctrl+Z
jobsFlytta ett jobb till bakgrunden: `bg`
En pausad process körs inte. Om ni vill köra den i bakgrunden (utan att uppta terminalen) använder ni kommandot bg.
Ni kan hänvisa till jobbet med dess jobbnummer (till exempel bg %1). Processen fortsätter då att köras tyst i bakgrunden.
sleep 60
# Press Ctrl+Z
jobs
bg %1
jobsFlytta ett jobb till förgrunden: `fg`
Om ni har en process som körs i bakgrunden eller är pausad kan ni ta fram den till förgrunden och interagera med den med kommandot fg.
Precis som med bg anger ni jobbnumret (till exempel fg %1) för att ta fram det specifika jobbet.
sleep 60 &
jobs
fg %1
# Press Ctrl+C to stop it or Ctrl+Z to suspend it again.Kombinera processhantering
Dessa kommandon samverkar och ger er full kontroll över processer:
- Starta en uppgift:
nano - Pausa den:
Ctrl+Z - Flytta den till bakgrunden:
bg %1 - Starta en annan uppgift:
sleep 100 - Pausa den:
Ctrl+Z - Lista alla jobb:
jobs - Ta fram
nanotill förgrunden:fg %1 - Avsluta
nano:Ctrl+C - Avsluta
sleep:kill %2
Snabbtest
Ni har startat ett program, men det svarar inte alls. Ni kan inte ens stänga det med Ctrl+C. Ni känner till dess process-ID (PID).
Vilket är det effektivaste kommandot för att omedelbart avsluta denna envisa process?
Sammanfattning: processhantering
Bra jobbat! Ni har lärt er att hantera processer effektivt:
kill: Skicka signaler för att avsluta processer.kill -9: Avsluta en process med tvång.Ctrl+Z: Pausa en process i förgrunden.jobs: Lista jobb i bakgrunden och pausade jobb.bg: Skicka ett pausat jobb till bakgrunden.fg: Ta fram ett jobb i bakgrunden till förgrunden.
Dessa kommandon är avgörande för att behålla kontrollen över er Linux-miljö.
Lär dig Bemästra Linux-kommandoraden med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”Hantera processer: `kill`, `bg`, `fg`” gratis?
Ja – hela texten till ”Hantera processer: `kill`, `bg`, `fg`” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Bemästra Linux-kommandoraden, kan Ni uppgradera till CoddyKit PRO. Kursen i Bemästra Linux-kommandoraden innehåller totalt 4 lektioner.
Vad lär jag mig i ”Hantera processer: `kill`, `bg`, `fg`”?
Lär Er att effektivt avsluta, pausa och återuppta processer från kommandoraden. Ni övar på Bemästra Linux-kommandoraden med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Bemästra Linux-kommandoraden?
Du behöver inga förkunskaper. Utbildningen i Bemästra Linux-kommandoraden på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.
Hur lång tid tar lektionen ”Hantera processer: `kill`, `bg`, `fg`”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Bemästra Linux-kommandoraden-lektionen?
Ja. Varje Bemästra Linux-kommandoraden-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Förstå processer: `ps`, `top`, `htop`
- Hantera processer: `kill`, `bg`, `fg`
- Övervaka systemresurser: `df`, `du`, `free`
- Processprioriteringar med nice, renice och signaler