Wydaje się, że Bash rozróżnia zmienne, które zostały wyeksportowane, i te, które nie zostały wyeksportowane.
przykład:
$ FOO=BAR
$ env | grep FOO
$ set | grep FOO
FOO=BAR
set
widzi zmienną, ale jej env
nie widzi .
$ export BAR=FOO
$ env | grep FOO
BAR=FOO
$ set | grep FOO
BAR=FOO
FOO=BAR
set
widzi obie zmienne, ale env
widzi tylko wyeksportowaną zmienną.
Wiem, że set
to wbudowane bash i env
nie jest.
Jakie są różnice między zmiennymi, które są eksportowane, a tymi, które nie są?