Linux シェル,全ての子プロセスで、親の変数を利用可能にする

スポンサーリンク

鍛錬 184

Linux シェルスクリプト,派生した全ての子プロセスでも、親プロセスの変数を利用可能にする

Linux のシェルスクリプトで、親プロセスの変数を子プロセスでも利用可能にするには、export を使用します。

シェルスクリプト

以下のシェルスクリプト sample_1.sh , sample_2.sh , sample_3.sh は、親プロセスである sample_1.sh で作成した変数を、子プロセスである sample_2.sh と sample_3.sh でも利用可能であることを確認します。

sample_1.sh

#!/bin/sh

# 変数を子プロセスでも利用可能に設定
export test_variable="Hello, world"

echo "sample_1.sh = $test_variable"

# sample_2.sh を起動
./sample_2.sh

sample_2.sh

#!/bin/sh

# 変数が利用可能か確認
echo "sample_2.sh = $test_variable"

# sample_3.sh を起動
./sample_3.sh

sample_3.sh

#!/bin/sh

# 変数が利用可能か確認
echo "sample_3.sh = $test_variable"

実行結果

以下は、親プロセスである sample_1.sh を実行し、子プロセスの sample_2.sh 及び sample_3.sh でも、親プロセスの sample_1.sh の変数が利用可能か確認しています。

***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./sample_1.sh
sample_1.sh = Hello, world
sample_2.sh = Hello, world
sample_3.sh = Hello, world

 
上記に示した通り、sample_1.sh の変数が sample_2.sh 及び sample_3.sh でも利用可能であることが分かりました。

タイトルとURLをコピーしました