逆引きシェルスクリプト/case…esacのサンプルシェルスクリプト
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* case…esacのサンプルシェルスクリプト [#f3f8b517]
いろんな言語にあるswitchやSelect Caseなどの分岐条件記述が...
今回はシェルスクリプト(bash使用)でcase…esacのサンプルスク...
#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)
*関連記事 [#ad384720]
-[[if文のサンプルシェルスクリプト・数値比較編>逆引きシェ...
-[[if文のサンプルシェルスクリプト・ファイル・ディレクトリ...
-[[if文の条件式でand, or, notを使う方法>逆引きシェルスク...
* case...esac [#j1539c4c]
シェルスクリプトでは分岐条件記述のcase...esacは以下のよう...
(すでにお気づきかもしれませんがesacはcaseを逆にした記述で...
case 値 in
パターン)
処理;;
パターン)
処理;;
パターン)
処理;;
esac
以下にいくつかの例を記します。
* case...esacのサンプルスクリプトコード [#q5c6a1c9]
#ref(case-sample.sh)
#!/bin/bash
function usage {
echo -e "Usage:\t"`basename $0`" <numeric values 1-9>"
echo -e "\tPlease enter numeric values 1-9."
exit 1
}
if [ $# -ne 1 ]; then
usage
fi
case $1 in
1)
echo "[INFO] enter numric value is 1";;
[23])
echo "[INFO] enter numric value is 2 or 3";;
[4-9])
echo "[INFO] enter numric value is [4-9]";;
10)
echo "[INFO] enter numric value is 10";;
*)
echo "[ERR] invalid value";;
esac
上記の例では[]の正規表現を使って数値の範囲をパターンの部...
アスタリスク(*)などや?なども使用可能ですので試してみてく...
* case...esacサンプルシェルスクリプトの実行例 [#kfee7724]
上記のサンプルシェルスクリプトを動作させた例です。
-引数なしで呼び出したためUsageが
sakura@ubuntu:~$ ./case-sample.sh
Usage: case-sample.sh <numeric values 1-9>
Please enter numeric values 1-9.
-以下数値を引数として渡した時の出力です。
sakura@ubuntu:~$ ./case-sample.sh 1
[INFO] enter numric value is 1
sakura@ubuntu:~$ ./case-sample.sh 2
[INFO] enter numric value is 2 or 3
sakura@ubuntu:~$ ./case-sample.sh 8
[INFO] enter numric value is [4-9]
-以下、数値以外を引数に渡したのでパターンが*)の部分に相当...
sakura@ubuntu:~$ ./case-sample.sh z
[ERR] invalid value
以上、case...esacのサンプルシェルスクリプトでした。
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
終了行:
#navi(../)
* case…esacのサンプルシェルスクリプト [#f3f8b517]
いろんな言語にあるswitchやSelect Caseなどの分岐条件記述が...
今回はシェルスクリプト(bash使用)でcase…esacのサンプルスク...
#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)
*関連記事 [#ad384720]
-[[if文のサンプルシェルスクリプト・数値比較編>逆引きシェ...
-[[if文のサンプルシェルスクリプト・ファイル・ディレクトリ...
-[[if文の条件式でand, or, notを使う方法>逆引きシェルスク...
* case...esac [#j1539c4c]
シェルスクリプトでは分岐条件記述のcase...esacは以下のよう...
(すでにお気づきかもしれませんがesacはcaseを逆にした記述で...
case 値 in
パターン)
処理;;
パターン)
処理;;
パターン)
処理;;
esac
以下にいくつかの例を記します。
* case...esacのサンプルスクリプトコード [#q5c6a1c9]
#ref(case-sample.sh)
#!/bin/bash
function usage {
echo -e "Usage:\t"`basename $0`" <numeric values 1-9>"
echo -e "\tPlease enter numeric values 1-9."
exit 1
}
if [ $# -ne 1 ]; then
usage
fi
case $1 in
1)
echo "[INFO] enter numric value is 1";;
[23])
echo "[INFO] enter numric value is 2 or 3";;
[4-9])
echo "[INFO] enter numric value is [4-9]";;
10)
echo "[INFO] enter numric value is 10";;
*)
echo "[ERR] invalid value";;
esac
上記の例では[]の正規表現を使って数値の範囲をパターンの部...
アスタリスク(*)などや?なども使用可能ですので試してみてく...
* case...esacサンプルシェルスクリプトの実行例 [#kfee7724]
上記のサンプルシェルスクリプトを動作させた例です。
-引数なしで呼び出したためUsageが
sakura@ubuntu:~$ ./case-sample.sh
Usage: case-sample.sh <numeric values 1-9>
Please enter numeric values 1-9.
-以下数値を引数として渡した時の出力です。
sakura@ubuntu:~$ ./case-sample.sh 1
[INFO] enter numric value is 1
sakura@ubuntu:~$ ./case-sample.sh 2
[INFO] enter numric value is 2 or 3
sakura@ubuntu:~$ ./case-sample.sh 8
[INFO] enter numric value is [4-9]
-以下、数値以外を引数に渡したのでパターンが*)の部分に相当...
sakura@ubuntu:~$ ./case-sample.sh z
[ERR] invalid value
以上、case...esacのサンプルシェルスクリプトでした。
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
ページ名: