[ ] / test / [[ ]] の使い方

条件を調べる

書き方

[ "$a" -eq 1 ]
[ -f ファイル ]
[[ $s == *.log ]]
[[ $s =~ 正規表現 ]]

数値は -eq -ne -lt -le -gt -ge、文字列は = != -z(空)-n(空でない)、ファイルは -e -f -d -r -w -x -s。[[ ]] では == がパターン一致、=~ が正規表現、&& || が使えます。結果は終了コード(0 が真)。

例

$ [ -d /tmp ] && echo yes
$ [[ $name == a* ]] && echo match

実際に打って練習する

Bash コースの Lv38「見極める test と [ ]」で覚えます(第5章 巻物の書庫(シェルスクリプト))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜5 はログインすると無料で試せます(それより先はブロンズ以上のプランで遊べます)。

Bash・シェルスクリプトの構文一覧へ戻る