if

説明
条件式1(コマンド)が実行され 終了ステータスが0であればコマンド1が実行される。 コマンド1が実行されなければ条件式2が実行され 終了ステータスが0であればコマンド2が実行される。 コマンド1も2も実行されなかった場合コマンド3が実行される。
if 条件式1; then
    コマンド1
elif 条件式2; then
    コマンド2
else
    コマンド3
fi
真と偽
終了ステータスが 0 の場合は真、0 ではない場合は偽と扱われる。
false
echo $? # 1

true
echo $? # 0
条件式
testコマンドや[コマンドを利用する。
文字列の比較
str1 = str2
a="hoge"
b="foo"
if test $a = $b; then
    echo "a=b"
fi

b="hoge"
if test $a = $b; then
    echo "a=b"
fi
# a=b
文字列の否定
str1 != str2
if test a != b; then
    echo a is not b
fi
ファイルやディレクトリーが存在するか
-aを用いる
file=hoge
touch $file
if test -a $file; then
    echo "$file は存在しています"
fi
ファイルが存在するか
-fを用いる。
file=hoge
touch $file
if test -f $file; then
    echo "$file は存在しています"
fi
ディレクトリーが存在するか
-dを用いる
dir=dir
touch $dir
if test -f $dir; then
    echo "$dir は存在しています"
fi
否定
! を用いる
a="hoge"
b="foo"
if test ! $a = $b; then
    echo "a != b"
fi