Shell

シェルスクリプトの入門編3:特殊シェル変数について

今回のポイント

  • 変数の中にはあらかじめ特殊な意味を持ったものが環境変数として存在する
  • printenvコマンドで何が環境変数かを調べることができる

それでは、特殊シェル変数についての理解を深めていきましょう。

printenvで確認

現在使用中のシェルの環境変数はprintenvコマンドで確認することができます。

一部はプライベート情報なので省略してますが、環境変数としてセットされているのがいっぱい出てきました。

いくつかは、~/.bashrc~/.bash_profileによって起動時にexportコマンドでセットされているものもあります。

それ以外でデフォルトの環境変数となっているのが特殊シェル変数です。

それでは、紹介していきます。

HOME

HOMEは現在ログインしているユーザのホームディレクトリに対する絶対パスを格納しています。

ホームディレクトリ直下のファイルを参照したい場合に使われたりします。

PWD

PWDは現在コマンドを実行しているカレントディレクトリへの絶対パスを格納しています。

ディレクトリやファイルを作りたいときのルートディレクトリとしてこの変数を使ったりすることがあります。

SHELL

SHELLは現在ログインしているユーザのログインシェル、より具体的には/etc/passwdに記述されているユーザが使用するシェルへの絶対パスが格納されています。

LINENO

LINENOは現在実行しているシェルスクリプトファイルの行番号を格納しています。

echo-lineno.sh

実行、

まとめ

  • シェルスクリプトにはデフォルトで定義されている環境変数として特殊シェル変数がある
  • printenvコマンドで現在使える環境変数を知ることができる

-Shell

© 2023 Shiro's secret base