#08 整数を比較する演算子

int1 -eq int2 int1とint2が等しい
int1 -ne int2 int1とint2が等しくない
int1 -lt int2 int1とint2より小さい
int1 -le int2 int1がint2以下
int1 -gt int2 int1がint2より大きい
int1 -ge int2 int1がint2以上

整数を評価する例

Vimで「if-int.sh」というファイル名を作成、以下を記述、実行権限を付与する。

#!/bin/bash

num1=$1
num2=$2

if [ "$num1" -gt "$num2" ]; then
  echo "$num1 is larger than $num2"
fi

1番目の引数を変数「num1」に
2番目の引数を変数「num2」に代入。
「num1」が「num2」より大きければ「$num1 is larger than $num2」と表示される。

シェルスクリプトを実行する

$ if-int.sh 2 1

実行結果。

2 is larger than 1

1番目の引数と2番目の引数が同じ場合、又は2番目の引数が同じ場合は何も表示されない。

整数しか扱えない

少数で実行する。

$ if-int.sh 1.4 1.2

実行結果。

/home/minecraft/bin/if-int.sh: 6 行: [: 1.4: 整数の式が予期されます

シェルスクリプト の一覧