У меня нет большого опыта с export
но у меня создается впечатление, что это очень похоже на eval
.
Я ошибаюсь или нет?
Обычно назначенные переменные доступны только для текущего процесса оболочки. export
гарантирует, что в дочерних процессах также установлена переменная среды.
foo=123
echo "$foo"
bash -c 'echo "$foo"'
export foo=123
echo "$foo"
bash -c 'echo "$foo"'