sakawork @ ウィキ

メニュー

▼プログラミング言語関連
▼プロトコル関連
▼Web関連



ページ編集支援





リンク





UNIX > sh > TIPS


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

Top > UNIX > sh > TIPS

小技/TIPS的なもの

自分がよく作るシェルのパターン



#/bin/sh お決まり
# COMMAND=echo
COMMAND=ld_rm
デバッグ用:コメントで切り替えて、メインとなるコマンドをechoにする
本番用:デバッグのときにはコメントアウトする
# 変数の定義
PORT=16009
USER=XXXX
変数を定義
# USAGE関数を定義
USAGE()
{
    echo "usage: %0 ~~~"
}
使用方法を出す用途で定義した関数
最初に定義しておけば簡単な説明書代わりになる
(看板を書くのが面倒なときの代用)
%0 でこのシェルの名前をechoする
# 引数の数チェック
if [ $# -ne 数字 ]
else
    # 引数の数が過不足
    #USAGEを呼ぶ
    USAGE
    # エラーで終了
    exit 1
fi
最初に引数チェックを行い、不正ならUSAGEを呼んで終了
#引数によって処理を分ける
case($1)
[Aa])
    ~~~~
    ~~~~
    ;;
[Bb])
    ~~~~
    ~~~~
    ;;
*)
    # default 引数に誤りがあるのでUSAGE関数を呼んで終了
    USAGE
    exit 1
    ;;
esac
主に実行オプションの判別目的で自分はcase文をよく使う
さらにcase文をfor ~ in $@ do~doneで挟めばすべての引数(オプション)のチェックができる
もしくはwhile~do~doneで挟み、カウンタが&#になるまでshiftするという手も。
if ! $COMMAND -u $USER -p $PORT
then
    # 異常終了の処理をやってexit
    ~~~~
    exit $?
fi
COMMANDの実行結果が不正のときにはshellがCOMMANDの戻り値を返す
exit 0 正常終了




更新履歴

取得中です。


タグクラウド


アクセス

本日のアクセス
-
昨日のアクセス
-