: = часть:
: = не для сценариев оболочки, для выполнения заданий мы используем простой "=" в сценарии, то есть переменная = "ABCD";
: = доступен в других инструментах, хотя, как и в make, где он обозначает немедленное назначение.
что непосредственное назначение означает, что переменной присваивается значение в момент его разбора.
Есть также другие варианты, доступные как =? ... и т.д.
FXN возвращаемое значение часть:
сво основное правило, что функция может возвращать только одно значение.
Но если вы заинтересованы в возможности использовать несколько переменных вне тела функции, тогда - bash/korn/shell вообще не имеют какой-либо конкретной концепции в качестве локальной переменной.
По умолчанию все переменные, которые у вас есть в сценарии, являются глобальными, т.е. доступны по всему .... но только в пределах текущей оболочки.
вам нужно будет экспортировать переменные, чтобы сделать их доступными в дочерней оболочке. синтаксис: export variable_name;
Также необходимо использовать фигурные скобки {} для определения тела функции. т.е.
fxn_name()
{
var=$1; ## if you want to use a variable
......
....
}
его invokation/вызов fxn_name $ Arg;
Код psudo НЕ является оболочкой korn. Вы пытаетесь реализовать этот psudo-код в оболочке korn? – gbtimmon
Также. DONT реализует это в ksh. Это не то, для чего был разработан ksh, и для этого будет крайне сложно использовать оболочку korn. – gbtimmon