エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


Linuxで使用される主な環境変数・PATH、HOME、PS1・printenv、set、declare

      2020/08/24

Linuxで設定される主な環境変数

 

環境変数とシェル変数の設定方法、代入方法について

 
Linuxの環境変数でパスの設定をする方法とシェル変数の扱い方を解説
Linuxのbashで変数に値を追加する方法を多数紹介。+=や""を使う方法など
の記事では、環境変数、シェル変数の設定の方法や、代入の方法、一覧表示の方法などを解説しました。
 
この記事では Linuxでよく使用されている主な環境変数について解説を行います。
 
 
なお、上記で紹介した記事でも書いていますが、設定されている環境変数は「printenv」コマンドで一覧表示することができます。
(環境変数、シェル変数は、「set」コマンド、「declare」コマンドでも一覧表示させることができます。)
 
 

「printenv」コマンドの使い方

 
「printenv」コマンドはパラメータなしで実行すると、設定されている環境変数の一覧を表示します。
 

 
 
また、下記のように環境変数をパラメータとして指定して実行すると、指定した環境変数の内容を表示します。
 

 
 

Linuxに設定されている主な環境変数

 
Linuxでよく利用される環境変数を記載しておきます。
 
 

PATH

 
コマンドやプログラムを検索するディレクトリのリストが保存されています。
 
コマンドやプログラムを実行する際、この「PATH」に設定されているディレクトリにプログラムを設置しておくと、パスを指定せずにコマンド単体で実行することができます。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
 

PWD

 
カレントディレクトリが保存されています。
 
カレントディレクトリですので、「echo $PWD」で表示される値はその都度異なります。
 
 

HOSTNAME

 
ホスト名が保存されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
 

USER

 
現在のコマンドを実行しているユーザ名が設定されています。
 
コマンドを実行しているユーザ名ですので、「echo $USER」で表示される値はその都度異なります。
 
ちなみに、ログインしているユーザを切り替える「su」コマンドでは USER変数は変更されませんが、ログインし直す「-」付きの「su -」コマンドを実行すると USER変数は変更されます。
 
 

LC_ALL

 
地域ごとの言語や数値の表記、通過に関する規定、日付や時刻の書式に関する規定などを設定する地域情報(ロケール)が設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
 

LANG

 
地域ごとの言語や数値の表記、通過に関する規定、日付や時刻の書式に関する規定などを設定する地域情報(ロケール)が設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
 
地域情報(ロケール)として設定できる主な内容は下記のものがあります。
 LC_CTYPE:文字の種類やその比較・分類の規定
 LC_NUMERIC:数値の書式に関する規定
 LC_TIME:日付や時刻に関する規定
 LC_COLLATE:文字の参照や整列に関する規定
 LC_MONETARY:通過に関する規定
 LC_MESSAGES:メッセージ表示に使用する言語
 
LC_ALLも LANGも上記のロケールをまとめて設定することが出来る環境変数です。
 
LC_ALLと LANGの違いは、LC_ALLを設定している場合は上記の個別のロケールの設定をしていても LC_ALLの設定を優先しますが、LANGの場合は LANGの設定をデフォルトとして扱いますが、個別のロケールの設定をしている場合は個別の設定を優先します。
なお、LC_ALLと LANGの両方を設定している場合は、LC_ALLを優先します。
 
 
また、設定されているロケールの情報を確認するには「locale」コマンドを使用します。
 

 
 

HOME

 
コマンドを実行しているユーザのホームディレクトリが設定されています。
 
環境、実行ユーザによって異なりますが、具体的には下記のような値が設定されています。
 

 
 

LOGNAME

 
ログインシェルのユーザ名が設定されています。
 
USERと同じく、「echo $LOGNSME」で表示される値はその都度異なります。
 
ちなみに、ログインしているユーザを切り替える「su」コマンドでは USER変数は変更されませんが、ログインし直す「-」付きの「su -」コマンドを実行すると USER変数は変更されます。
 
 

PS1

 
コマンドプロンプトの表示文字列が設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
これは、「[admin@localhost ~]$ echo $PS1」の「$」より前の部分をどのように表示するかを設定してある情報です。
 
 

PS2

 
複数行のコマンド入力する際に表示されるコマンドプロンプトの値が設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
 

HISTSIZE

 
コマンド履歴の最大値が設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
 

HISTFILE

 
コマンド履歴を格納するファイルが設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
表示されるファイルには、「history」コマンドで表示されるコマンドの履歴が保存されています。
 
また、この「.bash_history」はユーザごとに用意されており、ユーザのホームディレクトリ(上記の例では「/home/admin/」)に置いてあります。
 
 

HISTFILESIZE

 
HISTFILEに保存する履歴の数が設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 
 

TERM

 
端末の種類が設定されています。
 
環境によって異なりますが、具体的には下記のような値が設定されています。
 

 - Linuxコマンド

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

Linuxのsplitコマンドは指定したサイズにファイルを分割する
Linuxのsplitコマンドは指定したサイズにファイルを分割する

Linuxのsplitコマンドはファイルを分割する機能を有する。分割するサイズ、行数、ファイル数を指定するオプションや、分割後のファイルの接尾辞を指定するオプションなどがある。

Linuxのheadコマンドは先頭行から、tailコマンドは最終行から指定した行を表示する
Linuxのheadコマンドは先頭行から、tailコマンドは最終行から指定した行を表示する

Linuxのhead、tailコマンドはファイルの先頭の一部、もしくは、末行の一部を表示するコマンド。行数や文字数で指定をする。tailはログを監視するためのオプションがある。

UNIX・Linuxの sedコマンドで特定の文字列を置換する方法

UNIX・Linuxのコマンドで特定の文字列を置換する sedコマンドの使い方と、perlコマンドを使っての方法を解説しています。

Linuxでファイルの内容を表示するcatコマンドの解説。more、lessで代替も
Linuxでファイルの内容を表示するcatコマンドの解説。more、lessで代替も

catはLinuxのコマンドで、本来の機能はファイルを連結だが、ファイルの内容を表示する機能のために使うことが多く使用頻度が高い。同種の機能のmore、less、tacコマンドについても解説。

Linuxの環境変数でパスの設定をする方法とシェル変数の扱い方を解説
Linuxの環境変数でパスの設定をする方法とシェル変数の扱い方を解説

Linuxでコマンドを設置するパスの設定情報である環境変数「PATH」の確認方法と環境変数「PATH」に新しいパスを追加する方法の解説。Linuxのシェルでの変数の扱い方についての解説も。

less、moreはページャー、ファイルの中身を表示するLinuxのコマンド
less、moreはページャー、ファイルの中身を表示するLinuxのコマンド

Linuxにはコマンドで実行した結果が長い場合、1画面ごとに区切って表示するコマンドが用意されている。それがページャーと呼ばれるmore、lessだ。この使い方を解説。

Linuxのファイル表示・結合catの逆処理のtac、revコマンドの解説
Linuxのファイル表示・結合catの逆処理のtac、revコマンドの解説

Linuxにtac、revというコマンドがある。catの逆の処理なのだが、tacは最終行から逆に表示し、revは行末の文字から逆に表示をすることを解説しつつその使い方について詳しく解説をする。

Linuxのnlは行番号を付与してファイルの内容を表示するコマンド
Linuxのnlは行番号を付与してファイルの内容を表示するコマンド

Linuxでファイルを表示する際に行番号を付与するにはcatコマンドにnオプションを使うことでも可能。しかし、行番号を付与する専門のnlコマンドがある。ここではその使い方を詳細に解説。

Linuxの wcコマンドでファイルの行数、単語数、バイト数、文字数をカウントする
Linuxの wcコマンドでファイルの行数、単語数、バイト数、文字数をカウントする

Linuxの行数、単語数、文字数、バイト数をカウントする「wc」コマンドの使い方の解説。find、lsと組み合わせてファイル数のカウント方法などを解説。

Linuxのbashで変数に値を追加する方法を多数紹介。+=や""を使う方法など
Linuxのbashで変数に値を追加する方法を多数紹介。+=や””を使う方法など

Linuxのbashで変数に値を代入する方法を解説。bashの変数の処理は柔軟で様々な方法を採れる。デリミタなしで値を追加する方法などを解説。