Sobes.tech
Middle
32

В чём разница между export VAR=value и VAR=value?

Companies where asked
МТСМТС

Answer from AI

sobes.tech AI

VAR=value — это присвоение значения переменной окружения в текущей оболочке (shell). Такая переменная доступна только в текущем сеансе и не передаётся дочерним процессам.

export VAR=value — это одновременно присвоение и экспорт переменной в окружение, то есть она становится доступной для всех дочерних процессов текущей оболочки.

Пример:

VAR1=hello
bash -c 'echo $VAR1'  # Выведет пустую строку, т.к. VAR1 не экспортирована

export VAR2=world
bash -c 'echo $VAR2'  # Выведет 'world', т.к. VAR2 экспортирована

Таким образом, export нужен, чтобы переменная была видна в подпроцессах.