Bash Scripting Crash

Aus Xinux Wiki
Version vom 26. November 2024, 23:57 Uhr von Alexej.harbig (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== 1. Grundstruktur eines Skripts == Ein Bash-Skript ist eine Textdatei, die eine Reihe von Befehlen enthält, die von der Bash-Shell ausgeführt werden. Jede…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

1. Grundstruktur eines Skripts

Ein Bash-Skript ist eine Textdatei, die eine Reihe von Befehlen enthält, die von der Bash-Shell ausgeführt werden. Jedes Skript beginnt mit der sogenannten Shebang-Zeile, die dem System mitteilt, dass das Skript mit der Bash-Shell ausgeführt werden soll.

Beispiel:

#!/bin/bash
echo "Hallo, Welt!"

2. Skript ausführbar machen

Um ein Skript auszuführen, musst du es ausführbar machen. Dies erfolgt mit dem Befehl `chmod`.

Schritte: - Speichere das Skript, z.B. als `mein_script.sh`. - Mache das Skript ausführbar:

  chmod +x mein_script.sh
  

- Führe das Skript aus:

  ./mein_script.sh
  

3. Variablen

Variablen werden ohne Leerzeichen um das `=`-Zeichen deklariert. Der Wert einer Variablen wird mit `$` abgerufen.

Beispiel:

#!/bin/bash
name="Alice"
echo "Hallo, $name!"

4. Eingaben vom Benutzer lesen

Verwende den Befehl `read`, um Eingaben vom Benutzer zu erhalten.

Beispiel:

#!/bin/bash
echo "Gib deinen Namen ein:"
read name
echo "Hallo, $name!"

5. Bedingte Anweisungen (if-else)

Mit `if`, `else` und `elif` kannst du bedingte Logik im Skript implementieren.

Beispiel:

#!/bin/bash
echo "Gib eine Zahl ein:"
read num
if [ $num -gt 10 ]; then
    echo "Größer als 10"
else
    echo "Kleiner oder gleich 10"
fi

6. Schleifen

Es gibt zwei Arten von Schleifen in Bash: **For-Schleifen** und **While-Schleifen**.

    • For-Schleife:**
for i in {1..5}
do
    echo "Nummer: $i"
done
    • While-Schleife:**
count=1
while [ $count -le 5 ]
do
    echo "Zähler: $count"
    ((count++))
done

7. Funktionen

Du kannst Funktionen erstellen, um wiederverwendbare Codeblöcke zu erstellen.

Beispiel:

#!/bin/bash
greet() {
    echo "Hallo, $1!"
}

greet "Alice"
greet "Bob"

8. Befehlszeilenargumente

Du kannst auf Befehlszeilenargumente mit `$1`, `$2`, etc., oder mit `$@` für alle Argumente zugreifen.

Beispiel:

#!/bin/bash
echo "Erstes Argument: $1"
echo "Alle Argumente: $@"

Führe das Skript mit folgenden Argumenten aus:

./mein_script.sh arg1 arg2 arg3

9. Rückgabestatus

Jeder Befehl gibt einen Rückgabestatus-Code zurück (`0` für Erfolg, eine andere Zahl für Fehler). Du kannst den Rückgabestatus mit `$?` überprüfen.

Beispiel:

#!/bin/bash
echo "Datei zum ausgeben?: "
read file
cat $file
if [ $? -eq 0 ]; then
    echo "Der Befehl war erfolgreich!"
else
    echo "Der Befehl ist fehlgeschlagen!"
fi

10. Eingabe- und Ausgabeumleitung

Mit Bash kannst du Eingaben und Ausgaben umleiten: - Ausgabe umleiten mit `>` (überschreibt eine Datei) oder `>>` (hängt an eine Datei an). - Eingabe umleiten mit `<`.

Beispiel:

#!/bin/bash
echo "Dies ist die Ausgabe" > output.txt  # Überschreibt die Datei
echo "Weitere Ausgabe" >> output.txt    # Hängt an die Datei an

11. Fehlerbehandlung

Mit `set -e` kannst du das Skript so einstellen, dass es bei einem Fehler sofort beendet wird.

Beispiel:

#!/bin/bash
set -e
echo "Dies wird funktionieren"
non_existent_command  # Dies wird das Skript beenden
echo "Dies wird nicht ausgeführt"