Sobes.tech
Middle

Aký je rozdiel medzi export VAR=hodnota a VAR=hodnota?

sobes.tech AI

Odpoveď od AI

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

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

Пример:

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

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

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