Fish Shell:
Organisation von Code in Funktionen
Wie geht das:
In Fish schreibst du eine Funktion mit dem Schlüsselwort function
, gibst ihr einen Namen und beendest sie mit end
. Hier ist eine einfache:
function hello
echo "Hallo, Welt!"
end
hello
Ausgabe:
Hallo, Welt!
Jetzt lassen wir sie einen Benutzer begrüßen:
function greet
set user (whoami)
echo "Hey da, $user!"
end
greet
Ausgabe:
Hey da, dein_benutzername!
Um sie über Sitzungen hinweg zu speichern, verwende funcsave greet
.
Tiefer Eintauchen
Fish Shell Funktionen sind wie Mini-Skripte – du kannst so ziemlich alles hineinpacken. Historisch gesehen hat das Konzept von Funktionen in Shell-Skripten unzählige Stunden wiederholender Eingaben und Debugging gespart. Anders als Programmiersprachen wie Python, sind Shell-Funktionen mehr auf Bequemlichkeit als auf Struktur ausgerichtet.
Manche Shells, wie Bash, verwenden function
oder einfach direkte Klammern. Fish hält sich an function ... end
— klar und lesbar. Innerhalb von Fish-Funktionen hast du alle Funktionen: Parameter, lokale Variablen mit set -l
, und du kannst sogar eine Funktion innerhalb einer anderen Funktion definieren.
Du benötigst keinen return
Wert, da Fish darauf nicht großen Wert legt; die Ausgabe deiner Funktion ist ihre Rückgabe. Und wenn du persistente Funktionen für zukünftige Sitzungen haben möchtest, erinnere dich an funcsave
.
Siehe auch
- Das Fish-Tutorial zu Funktionen: https://fishshell.com/docs/current/tutorial.html#tut_functions