DevOps Bootcamp · Lektion

Jobsteuerung (bg, fg, jobs)

Lernen Sie, Hintergrund- und Vordergrundprozesse zu verwalten, anzuhalten, fortzusetzen und Jobs in Ihrer Shell-Sitzung aufzulisten.

Lektion 1 von 411 Schritte

Jobsteuerung (bg, fg, jobs) ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.

Was ist Job Control?

Willkommen bei Job Control! Mit dieser leistungsfähigen Funktion Ihrer Linux-Shell können Sie laufende Programme verwalten, ohne Ihr Terminal zu schließen oder ein neues zu öffnen.

Stellen Sie es sich als Multitasking für die Befehlszeile vor. Sie können eine Aufgabe pausieren, in den Hintergrund verschieben oder wieder in den Vordergrund holen.

Vordergrund vs. Hintergrund

Wenn Sie einen Befehl ausführen, läuft er normalerweise im Vordergrund. Das bedeutet, dass er Ihr Terminal steuert und Sie keine neuen Befehle eingeben können, bis er abgeschlossen ist.

Ein Hintergrund-Prozess läuft dagegen unabhängig. Er gibt Ihr Terminal frei, sodass Sie während seiner Ausführung an anderen Dingen weiterarbeiten können.

Einen Prozess anhalten (Ctrl+Z)

Um einen aktuell laufenden Vordergrund-Prozess anzuhalten, verwenden Sie das Tastenkürzel Ctrl+Z. Dadurch wird ein SIGTSTP-Signal gesendet, das den Prozess anhält.

Der Prozess wird nicht beendet, sondern zu einem „angehaltenen“ Job, der darauf wartet, dass Sie ihm mitteilen, was als Nächstes geschehen soll.

Ihre Jobs anzeigen (jobs)

Sobald Sie einen Prozess angehalten oder in den Hintergrund verschoben haben, können Sie mit dem Befehl jobs eine Liste aller aktiven Jobs in Ihrer aktuellen Shell-Sitzung anzeigen.

Jeder Job erhält eine eindeutige Jobnummer (z. B. [1], [2] usw.) sowie seinen Status (z. B. Stopped, Running).

sleep 50 &
sleep 60 &
jobs

In den Vordergrund holen (fg)

Wenn Sie einen angehaltenen oder in den Hintergrund verschobenen Job haben, können Sie ihn mit dem Befehl fg und anschließend seiner Jobnummer (z. B. %1) wieder in den Vordergrund holen.

Dadurch wird der Job wieder zum aktiven Prozess in Ihrem Terminal.

sleep 100 &
jobs
# Now, let's bring it to foreground
fg %1

In den Hintergrund verschieben (bg)

Um einen angehaltenen Job fortzusetzen und in den Hintergrund zu verschieben, verwenden Sie den Befehl bg mit seiner Jobnummer.

Der Prozess läuft weiter, ohne Ihr Terminal zu blockieren, und Sie erhalten sofort Ihre Eingabeaufforderung zurück.

sleep 200
# Press Ctrl+Z to stop it
# Then type:
bg %1
jobs

Im Hintergrund ausführen ( & )

Sie müssen einen Prozess nicht immer im Vordergrund starten und anschließend anhalten. Sie können einen Befehl direkt im Hintergrund starten, indem Sie ein kaufmännisches Und (&) an das Ende des Befehls anhängen.

Das ist besonders praktisch für lang laufende Aufgaben, mit denen Sie nicht interagieren müssen.

echo "Starting long task..." &
sleep 300 &
jobs

Jobnummern und PIDs

Wenn Sie jobs verwenden, sehen Sie Jobnummern wie [1], [2]. Diese gelten nur für Ihre Shell-Sitzung.

Jeder laufende Prozess besitzt außerdem eine eindeutige Process ID (PID), also eine systemweit vergebene Nummer. PIDs können Sie mit jobs -l oder ps anzeigen.

sleep 100 &
jobs -l

Jobs beenden (kill)

Um einen Hintergrund- oder angehaltenen Job zu beenden, können Sie den Befehl kill verwenden. Sie können die Jobnummer (z. B. kill %1) oder die PID (z. B. kill 12345) angeben.

kill sendet ein Signal an den Prozess. Standardmäßig ist dies SIGTERM (ordnungsgemäße Beendigung). Für eine erzwungene Beendigung verwenden Sie kill -9 %job_number oder kill -9 PID.

sleep 500 &
jobs
# Assuming sleep is job 1:
kill %1
jobs

Quiz zur Jobsteuerung

Sie haben einen lang laufenden Befehl gestartet (z. B. find / -name *.txt), benötigen jetzt aber Ihr Terminal zurück, um einen anderen Befehl einzugeben. Welche Abfolge ist korrekt, um den Befehl find anzuhalten, in den Hintergrund zu verschieben, damit er weiterläuft, und anschließend zu bestätigen, dass er ein Hintergrundjob ist?

Zusammenfassung: Jobsteuerung

Sie beherrschen jetzt die Jobsteuerung!

  • Ctrl+Z hält einen Vordergrundprozess an.
  • jobs listet alle aktiven Jobs auf.
  • fg %N holt Job N in den Vordergrund.
  • bg %N verschiebt den angehaltenen Job N in den Hintergrund.
  • Durch Anhängen von & wird ein Befehl direkt im Hintergrund ausgeführt.
  • kill %N oder kill PID beendet einen Job.

So können Sie mehrere Aufgaben effizient innerhalb einer einzigen Terminalsitzung verwalten!

Kostenlos starten

Lerne DevOps Bootcamp mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
142
Lektionen
568

Häufig gestellte Fragen

Ist die Lektion „Jobsteuerung (bg, fg, jobs)“ kostenlos?

Ja — der vollständige Text von „Jobsteuerung (bg, fg, jobs)“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Jobsteuerung (bg, fg, jobs)“?

Lernen Sie, Hintergrund- und Vordergrundprozesse zu verwalten, anzuhalten, fortzusetzen und Jobs in Ihrer Shell-Sitzung aufzulisten. Du übst DevOps Bootcamp mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um DevOps Bootcamp zu starten?

Keine Vorkenntnisse erforderlich. DevOps Bootcamp auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Jobsteuerung (bg, fg, jobs)“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser DevOps Bootcamp-Lektion Code schreiben und ausführen?

Ja. Jede DevOps Bootcamp-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Jobsteuerung (bg, fg, jobs)
  2. Shell-Expansion und Globbing
  3. Aliase und benutzerdefinierte Eingabeaufforderungen
  4. Shell-Funktionen und wiederverwendbare Snippets
← Zurück zu DevOps Bootcamp