Back to questions
Wildberries
Senior
6
В чём разница между переменными VAR=value и export VAR=value в Bash?
Companies where asked
Answer from AI
sobes.tech AI
Переменная, объявленная как VAR=value в Bash, существует только в текущей оболочке (shell) и доступна только в ней. Она не передаётся дочерним процессам.
Если же объявить переменную с помощью export VAR=value, то она становится экспортируемой — то есть доступной не только в текущем shell, но и во всех дочерних процессах, которые будут запущены из этого shell.
Пример:
VAR=123
bash -c 'echo $VAR' # Выведет пустую строку, переменная не доступна в дочернем shell
export VAR=123
bash -c 'echo $VAR' # Выведет 123, переменная экспортирована и доступна в дочернем shell
Таким образом, export используется для передачи переменных окружения в дочерние процессы.