У меня есть функция Unix Bash, которая выполняет сценарий, который анализирует пользовательские переменные среды.Я хочу избежать экспорта соответствующих переменных в bash и вместо этого устанавливать их только для скрипта, как часть команды выполнения.
Если я устанавливаю переменные непосредственно в команде - например, VARNAME=VARVAL script_name
-- это работает хорошо.Однако, поскольку я хочу установить несколько переменных на основе разных условий, я хочу использовать локальную переменную функции для хранения настроек переменных среды, а затем использовать эту переменную в команде выполнения скрипта.У меня есть локальная переменная "vars", которая в конечном итоге установлена, например, на VARNAME=VAR
, но если я пытаюсь запустить ${vars} script_name
из своей функции bash, я получаю "команду не найдена" ошибка дляприсваивание переменной $ vars - т.е. содержимое $ vars интерпретируется как команда, а не как присваивание переменных среды.
Я пробовал разные варианты синтаксиса команды, но пока безрезультатно.В настоящее время я должен экспортировать соответствующие переменные в функцию, прежде чем вызывать скрипт, а затем сбросить / сбросить их до прежних значений, но это не совсем то решение, на которое я надеялся.
Любая помощь будетс благодарностью.
Спасибо, Шарон