こんにちは。
整数(非負)および最小最大値制限を確認するシェルスクリプトを書きました。
下記のように使う想定です。
$ ./is_integer.sh $N $N_MIN $N_MAX || echo "error"
source code
is_integer.sh
#!/bin/sh
is_integer_f_() {
case "$1" in ''|*[!0-9]*) return 1; esac # it isn't a non-negative integer
return 0
}
n="$1"; min="$2"; max="$3"
is_integer_f_ "$n" || exit 1
is_integer_f_ "$min" && [ "$n" -lt "$min" ] && exit 1
is_integer_f_ "$max" && [ "$n" -gt "$max" ] && exit 1
exit 0