• 追加された行はこの色です。
  • 削除された行はこの色です。
* エラー処理 [#ge176370]

** 終了コードによるエラー処理 [#d3041850]
 mkdir foo
 if [ $? -ne 0 ]; then
   echo "Can't mkdir"
 fi

** ディレクトリがないから作る [#vb6ca4c4]
 mkdir foo || exit 1

 if [ ! -d $DIR ]; then
    mkdir $DIR
    [ $? -ne 0 ] && { echo "Error!"; exit 1; }
 fi

** メッセージをエラー出力にecho [#s9f56873]
 echo "### ERROR: No such direcotry: $dir" 1>&2

** 異常終了する [#f320c3e6]
 if [ -z "$1" ]; then
   exit 1
 fi

** ショートサーキットでエラー判定する [#l1ed6e37]
 #!/bin/sh
 mkdir foo
 mkdir foo || { echo "Error and exit"; exit 1; }
 echo "OK"
 ↓
 mkdir: ディレクトリ `foo' を作成できません: ファイルが存在します
 Error and exit
エラー判定後に複数コマンドを実行するには{}でグループコマンドを指定すれば良い。



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS