Есть ли такая вещь bash
или, по крайней мере, что-то подобное (обходное решение), например, форвардные объявления, хорошо известные в C / C ++?
Или есть такая штука, потому что например она всегда выполняется за один проход (строка за строкой)?
Если нет форвардных объявлений, что мне делать, чтобы мой скрипт было легче читать. Он довольно длинный, и эти определения функций в начале, смешанные с глобальными переменными, делают мой скрипт некрасивым и трудным для чтения / понимания)? Я прошу ознакомиться с некоторыми хорошо известными / лучшими практиками для таких случаев.
Например:
# something like forward declaration
function func
# execution of the function
func
# definition of func
function func
{
echo 123
}
источник
main
в функции сразу послеmain
(например,setup
илиparseArguments
). Я избегаю установки глобальных переменных вышеmain
- код не должен выходить за пределыmain
.if _ _ name _ _ == "_ _ main _ _": main()
делает в pythonКогда мои сценарии bash слишком разрастаются, я использую механизм включения:
Файл
allMyFunctions
:Файл
main
:источник
source allMyfunctions
?source
не соответствует стандарту POSIX.bash
определяетsource
как псевдоним.
: они функционально эквивалентны.