🐚
シェル変数と環境変数
概要
- シェル変数と環境変数について説明します
結論
- シェル変数をexportすることで環境変数に変換できます
シェル変数
- シェル変数の中でも、特別なシェル変数はシェルの機能のカスタマイズができる
- シェル内部で使用される変数なので、外部コマンドからは参照できない
- ※外部コマンドについては以下参照
特別なシェル変数の例
- PS1
- プロンプト記号(コマンドラインの先頭に表示されている記号)の設定
- PATH
- コマンド検索パスの登録
設定方法
ターミナル
var1='test variable' #変数名='値'で変数に値を設定
echo $var1 #参照時は先頭に$記号を付ける
# test variable
※ 値がスペースを含む場合には「'」または「"」で囲む必要がある
※ 変数を設定するとき=の左右にスペースを付けてはいけない
環境変数
- コマンドが入力される度に環境変数を読み込みにいくため、シェル変数を環境変数に変換することで、カスタマイズした内容が設定として広く効果を発揮する
- シェル変数とは異なり、環境変数は外部コマンドからでも参照できる
- 現在のシェルに設定済みの環境変数は、printenvコマンドで表示できる
シェル変数から環境変数への変換方法
-
$ export シェル変数
とすることでシェル変数から環境変数へ変換することができます
ターミナル
$ LESS='--no-init' #シェル変数を設定する
$ export LESS #export シェル変数
# 上の二行を一行にまとめることもできる
$ export LESS='--no-init'
補足
環境変数をシェル設定ファイルに記述し、永続化させる方法は以下に記載。
Discussion