LINUX.ORG.RU

Shell - переменные окружения


0

0

Можно ли shell-скриптом установить переменные окружения?

Здесь http://gazette.lrn.ru/rus/articles/abs-guide/x1676.html написано, что нельзя передать переменные из скрипта в оболочку, но, может быть, всё же существует какой-нибудь способ?


переменные окружения -- это свойство процесса -- как открытые дескрипторы. Они могут только наследоваться от родителя к ребенку но не наоборот.

Почитай про шелловскую команду "точка" (source).

dilmah ★★★★★
()
Ответ на: комментарий от dilmah

Немного не то. Нужно просто выделить некоторое количество команд установки переменных окружения в файл, чтобы можно было его загрузить и дальше в терминале работать с такими переменными окружения. Раз так сделать нельзя, придеться использовать alias

mosfet
() автор топика
Ответ на: комментарий от mosfet

> ужно просто выделить некоторое количество команд установки переменных
> окружения в файл, чтобы можно было его загрузить и дальше в терминале 
> работать с такими переменными окружения.

$ echo "export AAA=xxx" > test.vars
$ . test.vars
$ echo $AAA 
xxx

Оно?

anonymous
()
Ответ на: комментарий от anonymous

Хм, действительно работает, спасибо.

mosfet
() автор топика
Ответ на: комментарий от anonymous

export в этом случае не обязательно (если конечно не нужно чтобы эти переменные наследовались).

Deleted
()
Ответ на: комментарий от Deleted

без export в env не будет видится :) правда, есть set...

true_admin ★★★★★
()
Ответ на: комментарий от rei3er

> это не свойство _процесса_

Это данные в памяти процесса. Каждый процесс получает свою копию окружения при создании. man 7 environ

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