LINUX.ORG.RU

Вопрос насчет Export переменных в скриптах


0

0

Каким образом можно использовать переменную, которая модифицируется в первом скрипте, во втором?

Почему то не работает такая конструкция

script 1: ----------------------------- set_params.sh #!/bin/sh

export VAR1="data1" export VAR2="data2" -----------------------------

script 2: ----------------------------- print_params.sh #!/bin/sh ./set_params.sh

echo $VAR1 echo $VAR2 -----------------------------

При выполнении print_params.sh скрипт set_param.sh вызывается и нормально отрабатывает, но переменные VAR1 и VAR2 по прежнему не определены (по echo ничего не выводится).

Такая же ситуация, если я вызываю set_param.sh из командной строки, а потом пробую воспользоваться VAR1 или VAR2

Если эти переменные экспортируются, то куда и как их все таки можно передавать из одного скрипта в другой?

anonymous

Все просто. Вы вызываете set_params.sh: для него запускается новая копия shell, которая завершается. Потомок не имеет доступа к окружению (данным) предка, и это правильно. Есть операция . , которая выполняет команды файла в текущей копии шелл - вот в её сторону и стоит поглядеть IMHO

Dimai
()

А как эта операция называется? Или в каком мане об этом почитать можно?

anonymous
()

Вопрос отпадает, надо мне быть внимательнее. :)

Спасибо.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.