他の回答が何を言っているのかを説明するには:
$ foo="Hello, World"
$ echo $foo
Hello, World
$ bar="Goodbye"
$ export foo
$ bash
bash-3.2$ echo $foo
Hello, World
bash-3.2$ echo $bar
bash-3.2$
export
変数をサブプロセスで使用できるようにします。
つまり、
export name=value
変数名がすべてのプロセスで利用できることを意味します そのシェルプロセスから実行します。プロセスでこの変数を使用する場合は、export
を使用します。 、そのシェルからプロセスを実行します。
name=value
変数のスコープがシェルに制限され、他のプロセスでは使用できないことを意味します。これを (たとえば) ループ変数、一時変数などに使用します。
変数をエクスポートしても、親プロセスで使用できるようにはならないことに注意してください。つまり、生成されたプロセスで変数を指定してエクスポートしても、それを起動したプロセスでは使用できません。