Gibt es so etwas in bash
oder zumindest etwas ähnliches (Workaround) wie Vorwärtsdeklarationen, zum Beispiel in C/C++ bekannt?Weiterleiten von Funktionsdeklarationen in einem Bash- oder Shell-Skript?
Oder gibt es so etwas, weil zum Beispiel es immer in einem Durchgang (Zeile für Zeile) ausgeführt wird?
Wenn keine Forward-Deklarationen vorhanden sind, was soll ich tun, damit mein Skript leichter lesbar ist? Es ist ziemlich lang und diese Funktionsdefinitionen am Anfang, gemischt mit globalen Variablen, lassen mein Skript hässlich und schwer lesbar erscheinen. Ich bitte darum, einige bekannte/bewährte Praktiken für solche Fälle zu lernen.
Zum Beispiel:
# something like forward declaration
function func
# execution of the function
func
# definition of func
function func
{
echo 123
}
Hallo, wie Sie Datenstruktur, die hat in deinem Beispiel zwischen foo/bar/baz geteilt werden? Normalerweise lege ich es einfach an die Spitze des Skripts. Ist dies bei der Verwendung von Funktionen noch immer der Fall? Oder ist es besser, globale Daten in main einzufügen und sie dann als Argumente an foo/bar/baz weiterzugeben? Was ist die beste Praxis? – bodacydo
Ich bevorzuge Argumente. Abgesehen davon werde ich globale Variablen in 'main' oder in einer Funktion direkt nach' main' setzen (z. B. 'setup' oder' parseArguments'). Ich vermeide es, globale Variablen über 'main' zu setzen - Code sollte nicht außerhalb von' main' liegen. –
Das erscheint etwas analog zu dem, was '_ _ _ _ _ = _ _ _ main _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _: main()' tut in Python –