引数で渡された値が整数かどうかをチェックするシェルスクリプトです。
値が整数の場合は戻り値に0を返し、整数以外の場合は1を返します。
3行目は引数に値が入っているかどうかチェックしています。
10行目は引数の値に1を足して、整数かどうかをチェックしています。
整数であれば戻り値に0か1が返ってきます。
また、「> /dev/null 2>&1」と記述することによって、メッセージを画面に出力しないようにしています。
16行目は引数の値がマイナスかどうかをチェックしています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#!/bin/bash if [[ -n $1 ]] then arg=$1 else exit 1 fi expr $arg + 1 > /dev/null 2>&1 if (( $? > 1 )) then exit 1 fi if (( arg < 0 )) then exit 1 fi exit 0 |
実行例
$ ./chk_num.sh 100
$ echo $?
0