IT

シェル環境のカスタマイズと使用【LPIC level1】

目次

  • シェル環境のカスタマイズと使用
  • 環境変数とシェル変数(環境変数、シェル変数)
  • シェルのオプション
  • エイリアス
  • 関数の定義
  • bashの設定ファイル

シェル環境のカスタマイズと使用

環境変数とシェル変数

シェルとは、LinuxのOSカーネルに対してコマンドで命令を出し、受け取った結果を表示するプログラムです。

環境変数

環境変数とは、シェル自身とそのシェルから起動されるすべてのプロセスで有効となる変数です。

代表的な環境変数としては、コマンドを検索するディレクトリリストを格納するPATH、ユーザーのホームディレクトリのフルパスを表すHOMEなどがあります。

シェル変数

シェル変数とは、そのシェル内でのみ有効となります。

シェル変数は、exportコマンドでエクスポートすることによって環境変数となり、このシェルから起動したコマンドや他のシェルでも使えるようになります。

envコマンドやprintenvコマンドを実行すると、設定されている環境変数が表示されます。

setコマンドを実行すると、シェル変数と環境変数が表示されます。

シェルのオプション

シェルには様々なオプション機能があり、setコマンドを使ってオン/オフを切り替えられます。

set [-o][+o] [オプション]

-oで指定するとオプションが有効になり、+oで指定するとオプションが無効になります。

以下、bashで利用可能なsetの主なオプションです。

オプション説明
allexport新規作成・変更した変数を自動的に環境変数とする。
emacsemacsエディタと同じキーバインドにする。
(矢印キーやマウスで操作でき、Ctrl+Dで1文字削除できる。など。)
ignoreeofCtrl+Dを押してもログアウトしない設定にする。
noclobberリダイレクト演算子「>」「>&」「<>」で
既存のファイルを上書き不可に設定する。
noglobパス名展開を無効に設定する。
noexecシェルスクリプトを読み込むが、実行はせずに構文エラーのみを確認する。
viviエディタと同じキーバインドにする。

エイリアス

bashでは、エイリアス機能を利用することで、コマンドに別名をつけたり、コマンドとオプションをひとまとめにして新しいコマンドのようにしたり、一連のコマンドを簡単に呼び出したり出来るようになります。

エイリアスの設定は、aliasコマンドで行います。

エイリアスを解除するには、unaliasコマンドを使います。

関数の定義

bashの組み込みコマンドであるfunctionコマンドを使うと、bashシェル上で利用できる独自の関数を定義できます。

定義されている関数のみを表示するには、declare -fコマンドを使います。

関数定義を削除するには、変数を削除する時と同様に、unsetコマンドを使います。

bashの設定ファイル

シェルを起動するたびに、環境変数とエイリアス、関数などを定義するのは非効率です。そのため、それらの定義を自動的に行うための設定ファイルが用意されています。

以下、bashの設定ファイルです。

ファイル説明
/etc/profileログイン時に実行され、全ユーザーから参照される。
/etc/bash.bashrcbash起動時に実行され、全ユーザーから参照される。
/etc/bashrc~/.bashrcから参照される
~/.bash_profileログイン時に実行される。
~/.bash_login~/.bash_profileがない場合、ログイン時に実行される。
~/.profile~/.bash_profileも~/.bash_loginもない場合、ログイン時に実行される。
~/.bashrcbash起動時に実行される。
~/.bash_logoutログアウト時に実行される。

最後まで読んで頂き、ありがとうございました。

他の分野へ移動できる全体ページへは下記リンクから移動できます。