重要なポイント
Linux で環境変数を一覧表示するには、printenv コマンドを使用します。これにより、すべての環境変数が表示されますが、これをlessコマンドにパイプすることで検索可能な結果を取得できます。あるいは、grep を使用して特定の環境変数を確認します。
Linux では、環境変数には重要な値と設定が保持されます。スクリプト、アプリケーション、およびシェルは、多くの場合、自身を構成したり、動作を制御したりするために、これらの値を読み取ります。ここでは、ターミナルに環境変数を表示するいくつかの方法と、リストを解釈する方法を示します。
Linux環境変数とは何ですか?
変数は私たちにとっての値を保持します。プロセスが値を知る必要がある場合、リスト内の名前で変数を検索し、そこから値を読み取ります。変数名は変更できませんが、値は変更できます。環境変数は、他の変数と同様、名前と値の組み合わせです。名前は一意で、変数の作成時に設定され、環境変数の存続期間中存続します。
私たちのさまざまなテスト コンピューターには、それぞれ平均 50 個の 環境変数 があります。
システム環境変数を変更することはあまりありませんが、必要に応じて変更できます。たとえば、
Bash シェル コマンド履歴
キャッシュのサイズを増やしたい場合があります。
「.bashrc」ファイル
内の
$HISTSIZE
環境変数の値を編集して、記憶されるコマンドの数の新しい上限を設定できます。
それはきちんとしていて便利ですが、頻繁に行うものではありません。環境変数はデフォルトのままになるか、一度変更されてから忘れられる傾向があります。頻繁にいじるようなものではありません。
それでも、コンピューター上で定義され使用されている環境変数を確認する方法を知っておくことは価値があります。環境変数をターミナル ウィンドウに出力すると、その値が表示され、Linux エクスペリエンスのどのような側面がこれらのバックグラウンド値によって制御されているかがわかります。
環境変数の値を表示する方法
echo
使用すると、環境変数に格納されている値を確認できます。そのためには、環境変数の名前を事前に知っておく必要があります。
エコー $HOME
エコー $USER
Linux 上のすべての環境変数の名前と値を表示するには、一般的に 2 つの方法が使用されます。それは
env
コマンドと
printenv
コマンドです。
printenv
コマンドが正式な方法です。このコマンドは
、この目的のために特別に
作成されました。
env
コマンドには
まったく異なる目的
があります。
env
、ユーザーが指定した一時的な環境変数の値を使用してアプリケーションを実行するために使用されます。これらは実際に保存されている値をオーバーライドし、変更された環境でアプリケーションを実行できるようにします。コマンドラインパラメータを指定せずに
env
を呼び出した場合、デフォルトのアクションは環境変数をリストすることです。
誤って呼び出されたツールの副作用に依存するのではなく、ジョブ用に設計されたツールを使用した方がよいため、例では
printenv
を使用して環境変数を確認します。
printenv を使用して環境変数を一覧表示する方法
printenv
コマンドを使用すると、環境変数を表示でき、実際には非常に簡単です。選択肢は非常に少ないです。
--version
オプションを使用すると、コンピュータ上のバージョンのリリース番号を確認できます。また、
--help
コマンドを使用すると、これら 2 つと他の 1 つのコマンド ライン オプションの簡単な説明を表示できます。
もう 1 つのオプションは、
-0
(ヌル終端文字) オプションです。通常、
printenv
各行の末尾に改行文字を追加することにより、環境変数を 1 行に 1 つずつリストします。
-0
オプションは、その改行文字をヌルバイトに置き換えます。改行文字を必要としない別のアプリケーションに出力
をパイプする
場合は、このオプションを使用します。
printenv -0
ターミナル ウィンドウでの
-0
オプションの効果は、出力を突き抜けられないテキストの壁に詰め込むことです。
この形式でリストされた環境変数を理解することは事実上不可能です。
-0
オプションを使用する必要がある場合は、ほとんどありません。それをドロップして、もう一度試してみましょう。
printenv
出力には、1 行に 1 つの環境変数が表示されます。慣例により、環境変数名には常に大文字が使用されます。変数名の直後には等号「
=
」があり、その後に環境変数が設定されている値が続きます。
まだ多くの出力があるため、環境変数を
less
に
パイプする方が簡単かもしれません。
プリントエンブ |少ない
これにより、環境変数のリストをスクロールしたり、リストを検索したりすることができます。
興味のある環境変数について何かわかっている場合は、
grep
を使用して
可能性のある候補を見つけることができます。 「display」という単語が含まれる環境変数があると仮定します。次のようにリストを検索できます。
プリントエンブ | grep 表示
いくつかの一般的な環境変数
さまざまな Linux コンピューターのデフォルトの環境変数は、さまざまなディストリビューション、 デスクトップ環境 、およびシェルの管理者の設定に依存します。そのため、Linux デバイスの環境変数をチェックすると、さまざまな結果が表示される場合があります。
ここでは 、GNOME デスクトップ環境 を使用する Linux コンピュータでよく見られる一般的な環境変数をいくつか示します。
- BASHOPTS : bash の起動時に使用されたコマンド ライン オプションのリスト。
- BASH_VERSION : bash のバージョン。
- COLUMNS : 列単位の端末の幅。
-
DIRSTACK
:
pushdおよびpopdコマンド で使用するディレクトリのスタック。 - HISTFILESIZE : 履歴ファイルに書き込むことができるコマンド履歴の最大行数。
- HISTSIZE : メモリに保存できる コマンド履歴 の最大行数。この数値を超えると、以前に記憶されたコマンドがメモリ内で上書きされます。ターミナル ウィンドウを閉じると、コマンド履歴が履歴ファイルに書き込まれます。
- HOME : 現在のユーザーのホーム ディレクトリ。
- HOSTNAME : コンピュータの名前 。
- IFS : ユーザー入力を解析するために使用される内部フィールド区切り記号。デフォルト値はスペースです。
- LANG : 現在の言語およびローカリゼーション設定 (文字エンコーディングを含む)。
- LS_COLORS : ls からの出力に色を追加するために使用されるコードを定義します。
- MAIL : 現在のユーザーの Linux メールボックスへのパス。
- OLDPWD : 以前の作業ディレクトリ。
- PS1 : 主要なコマンド プロンプト定義。これは、ターミナル ウィンドウのプロンプトがどのように見えるかを定義します。
- PATH : シェルにコマンドを入力すると、一致するコマンドまたはアプリケーションが順番に検索されるディレクトリのコロンで区切られたリスト。
- PWD : 現在の作業ディレクトリ。
- SHELL : デフォルトのシェル の名前。
- TERM : シェルの実行時にエミュレートされる端末のタイプ。
- UID : 現在のユーザーのユーザー識別子。
- USER : 現在のユーザー。
-
_
: 最後に実行されたコマンド。これをリストするために
printenv使用する場合、それは常にprintenvになります。
環境検査
すべての環境変数を一覧表示するには、
printenv
使用します。
grep
を介して出力をパイプ処理して結果をフィルターし、
echo
を使用して特定の既知の環境変数の値を出力します。





