if - 条件が真のときコマンドを実行する

if

ifコマンドは条件分岐のコマンドで基本的なコマンドになります。Bashでのifコマンドはthenのキーワードが必要なことを忘れないようにしたいです。

文字列のパターンでの分岐のような条件分岐を記述する場合は、caseコマンドを利用したほうが良い場合もあります。

caseコマンドはある文字列に対して、パターンマッチを行っていき、コマンドの処理を分岐できます。 ファイルの拡張子によ...

ifコマンドと一緒によく利用するコマンドとしてtestコマンドがあります。

testコマンドは、[]コマンドという別の形を持つコマンドです。 条件分岐として使用することができるため、シェルスクリ...

スポンサーリンク

ifの構文

ifコマンドの基本的な構文

シェルスクリプトで記述する場合は以下のような形式で見られます。

ifコマンドの利用例

ifコマンドは条件を判定し、条件の判定によってコマンドの制御を分岐させることができます。条件が判定する終了ステータスの値が、0のときは真で、0以外のときは偽になります。条件によく利用されるコマンドとして[コマンド(testコマンド)が利用されます。

また、数値のチェックとして((...))のような算術式を評価する構文も利用できます。これは評価した式の値が0のときは1(偽)を返し、0以外の場合は0(真)を返します。

if.sh

実行結果

${#var}は変数に格納されている文字列の文字数を表示できます。

if2.sh

実行結果

${var:-word}は変数varが未設定またはnullの場合は値がwordになり、それ以外は変数varの値になります。
変数の代入とともにコマンドの実行を行うとそのコマンドに対して、その変数が環境変数として追加されます。

参考

GNU Bash manual

スポンサーリンク