[ホーム] > [間違えやすい類語 IT編一覧] > [printenv、env、set、exportコマンドの違いに関して]
CentOS / Redhat Enterprise Linux における変数関連のコマンドを紹介します。
(*)bash を想定しています。他のシェルでは動作が異なる可能性が高いので注意してください。
参考:シェル変数と環境変数の違い
シェル変数:シェル内のみ有効
環境変数:子シェル、シェルから実行したプログラムにも引き継がれる変数。
(注意)分かりやすく簡単に記載しており、一部の環境や分野では記載内容が異なる可能性があります。あくまでも参考程度でお読みください。
説明 | printenv | env | set | export |
概要 | ・環境変数の一覧を出力。 | ・環境変数の一覧を出力。 ・特定コマンドのみ有効な環境変数を設定。(下の欄で紹介しているコマンドを参照) | ・シェル変数と環境変数の一覧を表示 (*)シェル変数を設定するには以下のような記載。他のシェルだと異なるので注意。 <変数名> = <値> シェル変数を表示するには $を付ける。 echo $<変数名> | ・環境変数の一覧を表示 ・環境変数を設定 環境変数を表示するには $を付ける。 echo $<変数名> |
環境変数対応 | 〇(環境変数が表示される) | 〇(環境変数が表示される) | 〇(環境変数が表示される) | - |
シェル変数対応 | ×(シェル変数は表示されない) | ×(シェル変数は表示されない) | 〇(シェル変数は表示される) | - |
備考 | - | env は特定コマンドのみ変数を設定する便利な機能があり。以下はenv LANG=Cで date コマンド実行時のみ言語を変更している。 # env LANG=C date Tue Apr 3 16:07:10 JST 2018 # date 2018年 4月 3日 火曜日 16:07:06 JST | - | - |
[ホーム] > [間違えやすい類語 IT編一覧]
,