「UNIX/sh/TIPS」の編集履歴(バックアップ)一覧はこちら
「UNIX/sh/TIPS」(2011/03/05 (土) 23:51:43) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
&topicpath()
#contents
----
*小技/TIPS的なもの
**自分がよく作るシェルのパターン
| #/bin/sh |お決まり|
|# COMMAND=echo&br()COMMAND=ld_rm|デバッグ用:コメントで切り替えて、メインとなるコマンドをechoにする&br()本番用:デバッグのときにはコメントアウトする|
|# 変数の定義&br()PORT=16009 (br)USER=XXXX|変数を定義|
|# USAGE関数を定義&br()USAGE()&br()&nobold(){{} (br,4)echo "usage: %0 ~~~"&br()}|使用方法を出す用途で定義した関数&br()最初に定義しておけば簡単な説明書代わりになる&br()(看板を書くのが面倒なときの代用)&br()%0 でこのシェルの名前をechoする|
|# 引数の数チェック&br()if [ $# -ne 数字 ]&br()else (br,4)# 引数の数が過不足 (br,4)#USAGEを呼ぶ (br,4)USAGE (br,4)# エラーで終了 (br,4)exit 1&br()fi|最初に引数チェックを行い、不正ならUSAGEを呼んで終了|
|#引数によって処理を分ける&br()case($1)&br()[Aa]) (br,4)~~~~ (br,4)~~~~ (br,4);;&br()[Bb]) (br,4)~~~~ (br,4)~~~~ (br,4);;&br()*) (br,4)# default 引数に誤りがあるのでUSAGE関数を呼んで終了 (br,4)USAGE (br,4)exit 1 (br,4);;&br()esac|主に実行オプションの判別目的で自分はcase文をよく使う&br()さらにcase文をfor ~ in $@ do~doneで挟めばすべての引数(オプション)のチェックができる&br()もしくはwhile~do~doneで挟み、カウンタが&#になるまでshiftするという手も。|
|if ! $COMMAND -u $USER -p $PORT&br()then (br,4)# 異常終了の処理をやってexit (br,4)~~~~ (br,4)exit $?&br()fi|COMMANDの実行結果が不正のときにはshellがCOMMANDの戻り値を返す|
|exit 0|正常終了|
|BGCOLOR(#0AA):CENTER:表・大見出し|BGCOLOR(#0AA):CENTER:|h
|フッタ|フッタ|f
|BGCOLOR(#6EE):CENTER:表・小見出し|BGCOLOR(#6EE):CENTER:|h
|LEFT:左より|RIGHT:右より|
|BGCOLOR(#DDD):|BGCOLOR(#DDD):色つきのセル|
|BGCOLOR(#6EE):CENTER:表・小見出し|BGCOLOR(#6EE):CENTER:|h
|縦に結合|セル|
|~|セル|
|>|横に結合|
----
&link_toppage()
&topicpath()
----
&topicpath()
#contents
----
*小技/TIPS的なもの
**自分がよく作るシェルのパターン
| #/bin/sh |お決まり|
|# COMMAND=echo&br()COMMAND=ld_rm|デバッグ用:コメントで切り替えて、メインとなるコマンドをechoにする&br()本番用:デバッグのときにはコメントアウトする|
|# 変数の定義&br()PORT=16009 (br)USER=XXXX|変数を定義|
|# USAGE関数を定義&br()USAGE()&br()&nobold(){{} (br,4)echo "usage: %0 ~~~"&br()}|使用方法を出す用途で定義した関数&br()最初に定義しておけば簡単な説明書代わりになる&br()(看板を書くのが面倒なときの代用)&br()%0 でこのシェルの名前をechoする|
|# 引数の数チェック&br()if [ $# -ne 数字 ]&br()else (br,4)# 引数の数が過不足 (br,4)#USAGEを呼ぶ (br,4)USAGE (br,4)# エラーで終了 (br,4)exit 1&br()fi|最初に引数チェックを行い、不正ならUSAGEを呼んで終了|
|#引数によって処理を分ける&br()case($1)&br()[Aa]) (br,4)~~~~ (br,4)~~~~ (br,4);;&br()[Bb]) (br,4)~~~~ (br,4)~~~~ (br,4);;&br()*) (br,4)# default 引数に誤りがあるのでUSAGE関数を呼んで終了 (br,4)USAGE (br,4)exit 1 (br,4);;&br()esac|主に実行オプションの判別目的で自分はcase文をよく使う&br()さらにcase文をfor ~ in $@ do~doneで挟めばすべての引数(オプション)のチェックができる&br()もしくはwhile~do~doneで挟み、カウンタが&#になるまでshiftするという手も。|
|if ! $COMMAND -u $USER -p $PORT&br()then (br,4)# 異常終了の処理をやってexit (br,4)~~~~ (br,4)exit $?&br()fi|COMMANDの実行結果が不正のときにはshellがCOMMANDの戻り値を返す|
|exit 0|正常終了|
----
&link_toppage()
&topicpath()
----
表示オプション
横に並べて表示:
変化行の前後のみ表示: