0Pricing
Linux Server Deployment & SSH Mastery · Lektion

Funktionen, Argumente und wiederverwendbare Skripte

Machen Sie Ihre Bash-Skripte modular und wartbar: Definieren Sie Funktionen, übergeben und validieren Sie Kommandozeilenargumente, geben Sie Werte zurück und strukturieren Sie Skripte, die Sie für viele Serverautomatisierungsaufgaben wiederverwenden können.

Funktionen, Argumente und wiederverwendbare Skripte ist eine kostenlose Linux Server Deployment & SSH Mastery-Lektion auf CoddyKit. Dies ist Lektion 4 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 Linux Server Deployment & SSH Mastery-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Linux Server Deployment & SSH Mastery-Kurs umfasst insgesamt 4 Lektionen.

Von Skripten zu Tools

Sie können Skripte schreiben, Aufgaben automatisieren und Fehler behandeln. Der nächste Schritt besteht darin, Skripte wiederverwendbar zu machen: Organisieren Sie den Code in Funktionen, die Argumente entgegennehmen, damit ein Skript in vielen Situationen eingesetzt werden kann.

So werden Wegwerfskripte zu echten Administrationswerkzeugen.

Eine Funktion definieren

Eine Bash-Funktion bündelt Befehle unter einem Namen. Definieren Sie sie einmal und rufen Sie sie beliebig oft auf. Der Funktionskörper steht zwischen geschweiften Klammern.

greet() {
  echo 'Hello from the function!'
}

greet

Argumente an Funktionen übergeben

Funktionen erhalten Argumente positionsabhängig: $1, $2 und so weiter. $@ steht für alle Argumente, $# für deren Anzahl.

greet() {
  echo "Hello, $1! You are $2 years old."
}

greet Alice 30

Argumente auf Skriptebene

Dieselben Positionsvariablen funktionieren für das gesamte Skript. Wenn Sie ./deploy.sh staging v2 ausführen, liest das Skript $1 als „staging“ und $2 als „v2“.

#!/bin/bash
ENV=$1
VERSION=$2
echo "Deploying $VERSION to $ENV"

Argumente validieren

Robuste Tools prüfen ihre Eingaben. Überprüfen Sie die erwartete Anzahl der Argumente und beenden Sie das Programm mit einer Verwendungsmeldung, wenn Argumente fehlen.

if [ $# -lt 2 ]; then
  echo "Usage: $0 <env> <version>"
  exit 1
fi

Status aus Funktionen zurückgeben

Funktionen geben über return einen Exit-Status zurück (0 = Erfolg). Aufrufende Stellen prüfen ihn mit $? oder direkt in einem if.

is_root() {
  [ "$(id -u)" -eq 0 ]
}

if is_root; then echo 'root'; else echo 'not root'; fi

Daten aus Funktionen zurückgeben

Um tatsächliche Daten (nicht nur einen Status) zurückzugeben, geben Sie sie mit echo aus und fangen Sie sie per Befehlsersetzung ab. Die aufrufende Stelle weist die Ausgabe einer Variablen zu.

timestamp() {
  date +%Y%m%d_%H%M%S
}

NOW=$(timestamp)
echo "Backup name: backup_$NOW"

Lokale Variablen

Standardmäßig sind Bash-Variablen global, was in verschiedenen Funktionen zu Fehlern führt. Deklarieren Sie funktionsinterne Variablen mit local, damit sie isoliert bleiben.

add() {
  local result=$(( $1 + $2 ))
  echo $result
}

echo "Sum: $(add 3 4)"

Standardwerte und benannte Flags

Legen Sie mit Parameterexpansion sinnvolle Standardwerte fest und verarbeiten Sie Flags, um benutzerfreundlichere Tools zu erstellen.

  • ${1:-default} — verwendet „default“, wenn $1 nicht gesetzt ist
  • getopts — verarbeitet Flags im Stil von -v und -f file
ENV=${1:-staging}
echo "Target environment: $ENV"

Eine Funktionsbibliothek einbinden

Legen Sie gemeinsam genutzte Funktionen in einer eigenen Datei ab und sourcen Sie diese aus mehreren Skripten. So vermeiden Sie, Hilfsfunktionen überall zu kopieren.

# in lib.sh: define log(), is_root(), etc.
source ./lib.sh
log 'Starting deployment'

Bewährte Vorgehensweisen

Schreiben Sie wartbare Skripte:

  • Teilen Sie die Logik in kleine, benannte Funktionen auf
  • Validieren Sie immer die Argumente und geben Sie die Verwendung aus
  • Verwenden Sie local für Funktionsvariablen
  • Teilen Sie Hilfsfunktionen über eine eingebundene Bibliotheksdatei

Kurzer Test

Testen Sie Ihr Wissen über Bash-Funktionen.

Zusammenfassung

Sie können nun wiederverwendbare Bash-Tools erstellen:

  • Funktionen definieren und wiederholt aufrufen
  • Argumente übergeben und validieren ($1, $@, $#)
  • Status mit return und Daten über echo plus Befehlsersetzung zurückgeben
  • local-Variablen und gemeinsam genutzte Bibliotheken mit source verwenden

Diese Muster machen aus einmaligen Skripten ein wartbares Automatisierungs-Toolkit.

Häufig gestellte Fragen

Ist die Lektion „Funktionen, Argumente und wiederverwendbare Skripte“ kostenlos?

Ja — der vollständige Text von „Funktionen, Argumente und wiederverwendbare Skripte“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Linux Server Deployment & SSH Mastery-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Linux Server Deployment & SSH Mastery-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Funktionen, Argumente und wiederverwendbare Skripte“?

Machen Sie Ihre Bash-Skripte modular und wartbar: Definieren Sie Funktionen, übergeben und validieren Sie Kommandozeilenargumente, geben Sie Werte zurück und strukturieren Sie Skripte, die Sie für vi… Du übst Linux Server Deployment & SSH Mastery 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 Linux Server Deployment & SSH Mastery zu starten?

Keine Vorkenntnisse erforderlich. Linux Server Deployment & SSH Mastery 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 4 von 4.

Wie lange dauert die Lektion „Funktionen, Argumente und wiederverwendbare Skripte“?

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 Linux Server Deployment & SSH Mastery-Lektion Code schreiben und ausführen?

Ja. Jede Linux Server Deployment & SSH Mastery-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. Einführung in Bash-Scripting
  2. Serveraufgaben automatisieren
  3. Fehlerbehandlung und Protokollierung in Skripten
  4. Funktionen, Argumente und wiederverwendbare Skripte
← Zurück zu Linux Server Deployment & SSH Mastery