Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m122:learningunits:lu07:funktionen [2024/11/26 06:38] – msuter | modul:m122:learningunits:lu07:funktionen [2024/12/12 09:24] (aktuell) – [Variablen in Funktionen] msuter | ||
|---|---|---|---|
| Zeile 7: | Zeile 7: | ||
| </ | </ | ||
| - | #### Definition einer Funktion | + | ===== Definition einer Funktion |
| - | Funktionen werden in Bash folgendermaßen | + | Funktionen werden in Bash folgendermassen |
| <code bash> | <code bash> | ||
| Zeile 24: | Zeile 24: | ||
| </ | </ | ||
| - | #### Aufrufen einer Funktion | + | ===== Aufrufen einer Funktion |
| Eine Funktion wird durch ihren Namen aufgerufen, ohne Klammern: | Eine Funktion wird durch ihren Namen aufgerufen, ohne Klammern: | ||
| <code bash> | <code bash> | ||
| Zeile 30: | Zeile 31: | ||
| </ | </ | ||
| - | #### Beispiel | + | ==== Beispiel |
| Hier ist ein einfaches Beispiel, das eine Funktion namens `greet` definiert: | Hier ist ein einfaches Beispiel, das eine Funktion namens `greet` definiert: | ||
| Zeile 44: | Zeile 46: | ||
| **Ausgabe: | **Ausgabe: | ||
| - | </code> | + | < |
| Hallo, Welt! | Hallo, Welt! | ||
| </ | </ | ||
| - | #### Parameter in Funktionen | + | <WRAP center round tip 60%> |
| + | Beachte, dass die Definition der Funktion **vor** dem Aufruf stehen muss. | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Parameter in Funktionen | ||
| Funktionen können Argumente wie Skripte selbst annehmen. Diese werden mit `$1`, `$2` usw. innerhalb der Funktion referenziert, | Funktionen können Argumente wie Skripte selbst annehmen. Diese werden mit `$1`, `$2` usw. innerhalb der Funktion referenziert, | ||
| - | #### Rückgabewerte | + | ===== Rückgabewerte |
| Funktionen können numerische Rückgabewerte verwenden, die mit dem Befehl `return` gesetzt werden: | Funktionen können numerische Rückgabewerte verwenden, die mit dem Befehl `return` gesetzt werden: | ||
| <code bash> | <code bash> | ||
| Zeile 72: | Zeile 81: | ||
| </ | </ | ||
| - | Mit Funktionen | + | ===== Variablen |
| + | In Bash sind alle Variablen standardmässig als '' | ||
| + | Daher kann jeder Teil eines Bash-Scripts, | ||
| + | Wir können jedoch eine Variable innerhalb der Funktion als '' | ||
| + | Dadurch vermeiden wir Konflikte mit anderen Variablen, die den gleichen Bezeichner haben. | ||
| + | |||
| + | | <code bash> | ||
| + | function doIt() { | ||
| + | text = ' | ||
| + | } | ||
| + | |||
| + | text = ' | ||
| + | doIt | ||
| + | echo "Hello $text" | ||
| + | </ | ||
| + | function doIt() { | ||
| + | local text = ' | ||
| + | } | ||
| + | |||
| + | text = ' | ||
| + | doIt | ||
| + | echo "Hello $text" | ||
| + | </ | ||
| + | | Hello World | Hello Universe | | ||