条件式「if」文

シェルプログラム bash での、最も基本的な if文。

if 条件式
then
    条件が成り立った場合の処理
fi
文字コードを変換するスクリプトに追加
#! /bin/bash
if [ $# = 0 ]
then
    echo "ファイル名を指定して下さい"
    exit 1
fi

file=$1
mv $file ${file}.org
nkf -w -Lu ${file}.org > $file

引数が指定されていない場合、エラー文を表示してスクリプトを終了させる

if文の []
if [ $# = 0 ]

「[」は test コマンドのシンボリックリンク
その為、「$#」「=」「0」は引数となる為、間にスペースを入れる必要がある。

「if~else」文

基本的な if~else文 の書式

if 条件式
then
    条件が成り立った場合の処理
else
    条件が成り立たなかった場合の処理
fi

if文の [] 内で指定可能な条件式の例

条件式 意味
str1 = str2 文字列 str1 が文字列 str2 と等しければ true
str1 != str2 文字列 str1 が文字列 str2 と等しくなければtrue
-n str1 文字列 str1 が NULL でなければ true
-z str1 文字列 str1 が NULL であれば true
-d ディレクトリ名 ディレクトリが存在していれば true
-e ファイル名 ファイルもしくはディレクトリが存在していれば true
-f ファイル名 ファイルが存在していれば true