子シェル(sub.sh)
-------------
a=123
-------------
親シェル(test.sh)
-------------
./sub.sh
echo $a
-------------
これだと、親シェルの$a に 123 がセットされない。
そこでsourceを使って呼び出す
親シェル(test.sh)
-------------
source ./sub.sh
echo $a
-------------
こうすると、親シェルの$a に 123 がセットされる。
sourceは、現シェルのプロセスでシェルを実行するコマンドのようです。
-------------
a=123
-------------
親シェル(test.sh)
-------------
./sub.sh
echo $a
-------------
これだと、親シェルの$a に 123 がセットされない。
そこでsourceを使って呼び出す
親シェル(test.sh)
-------------
source ./sub.sh
echo $a
-------------
こうすると、親シェルの$a に 123 がセットされる。
sourceは、現シェルのプロセスでシェルを実行するコマンドのようです。