Definition und Aufruf: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „= Funktionen zur Strukturierung von Skripten – Definition und Aufruf = *Funktionen in der Bash dienen dazu, Skripte besser zu strukturieren und wiederverwen…“) |
|||
| Zeile 3: | Zeile 3: | ||
*Funktionen in der Bash dienen dazu, Skripte besser zu strukturieren und wiederverwendbare Codeblöcke zu erstellen.* | *Funktionen in der Bash dienen dazu, Skripte besser zu strukturieren und wiederverwendbare Codeblöcke zu erstellen.* | ||
*Sie werden definiert, indem ein Name für die Funktion angegeben und anschließend die Befehle in geschweifte Klammern gesetzt werden.* | *Sie werden definiert, indem ein Name für die Funktion angegeben und anschließend die Befehle in geschweifte Klammern gesetzt werden.* | ||
| + | *Befehle in Funktionen werden wie in normalen Skripten geschrieben und können mit den üblichen Shellmechanismen aufgerufen werden.* | ||
== Grundprinzip == | == Grundprinzip == | ||
* Eine Funktion wird einmal definiert und kann beliebig oft aufgerufen werden. | * Eine Funktion wird einmal definiert und kann beliebig oft aufgerufen werden. | ||
* Funktionen helfen, wiederkehrende Abläufe zu kapseln und den Code lesbarer zu gestalten. | * Funktionen helfen, wiederkehrende Abläufe zu kapseln und den Code lesbarer zu gestalten. | ||
| + | * Funktionen können Parameter entgegennehmen, die wie Stellungsparameter $1, $2, … innerhalb der Funktion verwendet werden. | ||
| + | * Der Rücksprung erfolgt automatisch nach Ausführung des letzten Befehls der Funktion. | ||
== Syntax == | == Syntax == | ||
| − | * | + | * FUNKTIONSNAME() { |
* Befehle | * Befehle | ||
* } | * } | ||
| − | * | + | * Alternativ mit function-Keyword: |
| − | * FUNKTIONSNAME | + | * function FUNKTIONSNAME { |
* Befehle | * Befehle | ||
* } | * } | ||
== Beispiel – einfache Funktion == | == Beispiel – einfache Funktion == | ||
| − | + | <syntaxhighlight lang=bash> | |
| − | + | greet() { | |
| − | + | echo "Hallo Welt" | |
| − | + | } | |
| + | greet | ||
| + | </syntaxhighlight> | ||
Ausgabe: | Ausgabe: | ||
Hallo Welt | Hallo Welt | ||
| − | == Beispiel – Funktion | + | == Beispiel – Funktion mit Parametern == |
| − | + | <syntaxhighlight lang=bash> | |
| − | + | greet() { | |
| − | + | echo "Hallo $1" | |
| − | + | } | |
| − | + | greet Thomas | |
| + | greet Maria | ||
| + | </syntaxhighlight> | ||
Ausgabe: | Ausgabe: | ||
| Zeile 39: | Zeile 46: | ||
== Hinweise == | == Hinweise == | ||
* Funktionen können vor oder nach ihrem Aufruf im Skript stehen, da Bash beim Parsen alle Funktionen erkennt. | * Funktionen können vor oder nach ihrem Aufruf im Skript stehen, da Bash beim Parsen alle Funktionen erkennt. | ||
| − | * | + | * Eine Funktion muss nicht zwingend einen Wert zurückgeben – sie kann ausschließlich Befehle ausführen. |
| − | * | + | * Parameterübergabe erfolgt über $1, $2, … innerhalb der Funktion. |
| + | * Interne Funktionen können überladen werden, d. h. eine bestehende Funktion kann durch eine neue Definition ersetzt werden. | ||
| + | * Befehle innerhalb von Funktionen werden wie normale Kommandos behandelt – sie müssen mit * beginnen, wenn sie in einem Beispielskript gezeigt werden. | ||
| + | * Funktionen können durch ./skript oder bash skript.sh aufgerufen werden, je nachdem, wie das Skript ausgeführt wird. | ||
Version vom 17. Oktober 2025, 16:31 Uhr
Funktionen zur Strukturierung von Skripten – Definition und Aufruf
- Funktionen in der Bash dienen dazu, Skripte besser zu strukturieren und wiederverwendbare Codeblöcke zu erstellen.*
- Sie werden definiert, indem ein Name für die Funktion angegeben und anschließend die Befehle in geschweifte Klammern gesetzt werden.*
- Befehle in Funktionen werden wie in normalen Skripten geschrieben und können mit den üblichen Shellmechanismen aufgerufen werden.*
Grundprinzip
- Eine Funktion wird einmal definiert und kann beliebig oft aufgerufen werden.
- Funktionen helfen, wiederkehrende Abläufe zu kapseln und den Code lesbarer zu gestalten.
- Funktionen können Parameter entgegennehmen, die wie Stellungsparameter $1, $2, … innerhalb der Funktion verwendet werden.
- Der Rücksprung erfolgt automatisch nach Ausführung des letzten Befehls der Funktion.
Syntax
- FUNKTIONSNAME() {
- Befehle
- }
- Alternativ mit function-Keyword:
- function FUNKTIONSNAME {
- Befehle
- }
Beispiel – einfache Funktion
greet() {
echo "Hallo Welt"
}
greet
Ausgabe: Hallo Welt
Beispiel – Funktion mit Parametern
greet() {
echo "Hallo $1"
}
greet Thomas
greet Maria
Ausgabe: Hallo Thomas Hallo Maria
Hinweise
- Funktionen können vor oder nach ihrem Aufruf im Skript stehen, da Bash beim Parsen alle Funktionen erkennt.
- Eine Funktion muss nicht zwingend einen Wert zurückgeben – sie kann ausschließlich Befehle ausführen.
- Parameterübergabe erfolgt über $1, $2, … innerhalb der Funktion.
- Interne Funktionen können überladen werden, d. h. eine bestehende Funktion kann durch eine neue Definition ersetzt werden.
- Befehle innerhalb von Funktionen werden wie normale Kommandos behandelt – sie müssen mit * beginnen, wenn sie in einem Beispielskript gezeigt werden.
- Funktionen können durch ./skript oder bash skript.sh aufgerufen werden, je nachdem, wie das Skript ausgeführt wird.