シェル・スクリプト・リファンレス |
コマンド集(機能別) | コマンド集(アルファベット順) | コマンド逆引き大全 | シェル・スクリプト・リファンレス |
環境変数の定義方法 |
「変数名=値」のように変数を定義すると,シェル変数として定義される。このシェル変数を環境変数に切り替えたい場合は「export 変数名」というように定義する。たとえば,DATA_NAME変数を環境変数に変更する場合を考えよう。
$ DATA_FILE=document.dat |
また,「export 変数名=値」とすることで,環境変数を直接定義できる。
$ export DATA_FILE=document.dat |
実行コマンドに変数を引き渡す |
実行するコマンドやスクリプトなどに変数を引き渡したい場合は,exportで環境変数に切り替えてからコマンドを実行する。たとえば,以下のような変数My_Nameを閲覧する,シェル・スクリプト「see_My_Name.sh」を実行する場合を考える。
#!/bin/sh echo $My_Name |
My_Nameに値を代入してシェル・スクリプトを実行すると,
$ My_Name=Fukuda |
結果には何も表示されず,see_My_Name.shにMy_Name変数の内容が引き渡されていないことが分かる。
そこで,環境変数に切り替えて実行すると,
$ export My_Name=Fukuda |
のように変数がシェル・スクリプトに引き渡されていることが分かる。
次のようにしても,コマンドに変数を引き渡すことが可能だ。
$ My_Name=Kazuhiro ./see_My_Name.sh |
ただし,この場合には,現在のシェル変数には指定した値は代入されない。
$ My_Name=Fukuda |
関連事項 |
export,環境変数,変数名 |