シェルの特殊変数
$$ シェル自身のプロセスID(PID)
$! 最後に実行したバックグラウンドプロセスのプロセスID(PID)
$? 最後に実行したコマンドの終了コード(戻り値)
$- setコマンドで設定したフラグ一覧
$* 全引数リスト。"$*"と「"」で囲むと"$1 $2 … $n"と全引数を連結して展開。
$@ 全引数リスト。"$@"と「"」で囲むと"$1" "$2" … "$n"とダブルクォートで囲み展開。
$# 実行シェルに渡された引数の個数
$0 シェル自身のファイル名
$1~$n シェルに渡された引数の値。$1, $2...と第1引数, 第2引数...が入る。
文字列の判定
文字列 文字列の長さ > 0 なら真
-n 文字列 文字列の長さ > 0 なら真
! 文字列 文字列の長さが 0 なら真
-z 文字列 文字列の長さが 0 なら真
文字列1 = 文字列2 文字列1と文字列2が等しければ真
文字列1 != 文字列2 文字列1と文字列2が等しくなければ真
エントリの判定
-d エントリ ディレクトリなら真
-f エントリ 通常ファイルなら真
-L エントリ シンボリックリンクなら真
-r エントリ 読み取り可能ファイルなら真
-w エントリ 書き込み可能ファイルなら真
-x エントリ 実行可能ファイルなら真
-s エントリ サイズが0より大きければ真
エントリ1 -nt エントリ2 エントリ1がエントリ2より新しければ真
エントリ1 -ot エントリ2 エントリ1がエントリ2より古ければ真
論理演算
! 条件 NOT
条件1 -a 条件2 AND
条件1 -o 条件2 OR
変数の有効範囲, exportコマンド
一度定義された変数はそのシェルの中だけで有効。
親シェル⇔子シェル同士で、変数名は参照出来ない。
export name
と書くと、exportコマンドは、変数nameをグローバル変数化する。
exportコマンドで指定された変数は、子シェルから参照可能となる。
■この記事のトラックバックURL:
http://www.mapee.jp/mpe334/mt-tb.cgi/511