Bourne シェルにおける事前定義された特殊変数
特殊な意味を持つ変数がいくつかあります。 以下の変数は、Bourne シェルによってのみ設定されます。
項目 | 説明 |
---|---|
$@ | $1 で始まる定位置パラメーターを展開します。
個々のパラメーターはスペースで区切られます。 二重引用符 ( |
$* | $1 で始まる定位置パラメーターを展開します。
シェルはそれぞれのパラメーターを IFS 変数値の先頭文字で区切ります。 二重引用符 ( |
$# | シェルに渡される定位置パラメーターの数 (シェル・プロシージャー自体の名前はカウントしない) を指定します。 したがって、$# 変数には、設定されている最大の番号が付いている定位置パラメーターの番号が入ります。 この変数の主な用途の一つは、必要な数の引数が存在するかどうかをチェックすることです。 シェルでアクセスできるのは、$0 から $9 の定位置パラメーターだけです。 |
$? | 最後に実行されたコマンドの終了値を指定します。 その値は 10 進の文字列です。 ほとんどのコマンドは、正常終了を示すのに 0 を戻します。 シェル自体は、その終了値として $? 変数の現行値を戻します。 |
$$ | 現在のプロセスのプロセス番号を識別します。 プロセス番号は、すべての既存のプロセスの中で唯一のものなので、この文字列は固有な一時ファイル名を作成するのによく使用されます。 以下の例は、この目的のみに使用するディレクトリーに一時ファイルを作成する推奨例です。
|
$! | & ターミネーターを使用してバックグラウンドで最後に実行されたプロセスのプロセス番号を指定します。 |
$- | シェルに現在設定されている実行フラグの名前からなる文字列です。 |