シェルスクリプトには他言語同様 if 文があります。
シェルスクリプトで if 文を使う時、シェルスクリプトの条件判断のtestコマンドについて1で触れました test コマンドを使用します。
サンプルコードとして、任意のファイル(hello.txt)がある場合はnew.txtファイルを生成するという処理を書いてみます。
※ファイル名は f.sh にします
~/f.sh
#!/bin/sh if [ -e hello.txt ] then touch new.txt fi
if 文の条件式には test コマンドの省略形の[]を用います。
if リスト then # 上の行のリスト内の条件がtrue(真)であった場合に行う処理を書く fi
の記述になります。
先程のコードに任意のファイル(hello.txt)がある場合はnew.txtファイルを生成し、ない場合はhello.txtを作成するという処理に変更してみます。
#!/bin/sh if [ -e hello.txt ] then touch new.txt else touch hello.txt fi
elseで新しい行を追加します。
もう一つ条件を追加したい場合はelifを利用します。
#!/bin/sh if [ -e hello.txt ] then touch new.txt elif [ -e new.txt] then touch hoge.txt else touch hello.txt fi
補足
ifとthenを同じ行に書きたい時は
if [ -e hello.txt ]; then
のように[]とthenの間にセミコロン( ; )を入れます。