
Bashのスクリプトで、if文による条件分岐のロジックを記述する方法です。
記事の目次
if文の書式を確認する!
if文の書式は、以下になります。
if [[ 条件式 ]]; then
#
else if [[ 条件式 ]]; then
#
else
#
fi
数値の条件式を記述する!
数値の条件式は、以下の書式で記述します。判定条件は、「-eq」等の形式で記述します。
変数 判定条件 数値
文字列の条件式を記述する!
数値の条件式は、以下の書式で記述します。判定条件は、「=」等の形式で記述します。
"変数" 判定条件 数値
サンプルのスクリプトを作成する!
if文で数値と文字列を判定して条件分岐します。以下、サンプルのスクリプトです。
$ cat sample_bash_03.sh
#!/bin/bash
#
# Usage : sample_bash_03.sh $1
# Version : 1.0
#
SHELL_NAME=`basename $0`
STA_MSG=Start!
END_MSG=End!
# START
/usr/bin/logger -ip local0.crit -t ${SHELL_NAME} ${STA_MSG}
# Main
if [[ $# -ge 2 ]]; then
MSG="Too many Arguments : $#"
elif [[ -z "$1" ]]; then
MSG="Default"
else
MSG=$1
fi
echo "$MSG"
# END
/usr/bin/logger -ip local0.crit -t ${SHELL_NAME} ${END_MSG}
exit 0
サンプルのスクリプトを実行してみる!
サンプルのスクリプトを実行してみます。引数なしの場合は、「elif」の条件に入ります。
./sample_bash_03.sh Default
引数が、1個の場合です。「else」の条件に入り、引数の文字列が表示されます。
./sample_bash_03.sh Hello Hello
数値の判定です。最初の「if」の条件に入ります。
./sample_bash_03.sh Hello Everybody Too many Arguments : 2
おわりに
if文で条件分岐のロジックを記述してみました。if文の書式と、数値、文字列の条件式の書式をまとめてみました。
関連記事
関連書籍(Amazon)
