<name>()
{
<body>
local <variable> # <- Lokale Variable hurra
}
Achtung! return funktioniert hier anders als gewohnt!
return gibt Errorstatus zurück, die numerisch sein müssen!
return in Funktionen ist also wie exit für das gesamte Script
Funktionen in bash haben also so gesehen keinen Rückgabewert!
Wenn von der Funktion nach stdout ausgegeben werden soll, muss die Funktion ganz normal, einfach als Name aufgerufen werden, hat dann aber nur ihren Exitcode als "Rückgabewert"
func <arg1> <arg2> ... wie shell commands einfach
Der $()-Wrapper fängt alles nach stdout (echo) ein, und gibt alles mit Leerzeichen getrennt als Rückgabewert