Tag: 比較演算子

bash/比較演算子

bash の比較演算子の意味 - enokitech

bash であれば [[ ! -d /var/tmp ]] のような 2 重カッコを使うことで、否定ができる

演算子英語記号
-ltLess than<
-gtGreater than>
-leLess than or Equal to<=
-geGreater than or Equal to>=
-eqEqual to=
-neNot equal to!=

文字列比較

=左項と右項が同一文字列の場合真
!=でない場合真
str文字列が null でない場合真
-n文字列が null でない場合真(not zero)
-zの場合真(zero)
if [ "$1" = "$2" ]; then

ファイルに関するオプション

オプション効果
-dディレクトリなら真
-f普通のファイルなら真
-r読み出し可能なら真
-sサイズが 0 より大きければ真
-w書き込み可能なら真
-x実行可能なら真
if [ -f "file1" ]; then

条件式を論理演算するオプション

オプション効果
-a左項条件式と右項条件式のどちらも真の場合真(and)
-oどちらかが真の場合真(or)
!条件式の否定(not)
()()の中の条件式を優先する

[ での -a-o は解釈が分かりにくいので、bash では [[ ... && ... ]][[ ... || ... ]] を使う方が安全。

Read more...