逆引きシェルスクリプト/if文のサンプルシェルスクリプト・数値比較編
の編集
Top
/
逆引きシェルスクリプト
/
if文のサンプルシェルスクリプト・数値比較編
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
#navi(../) * if文のサンプル・数値比較編 [#m6bac128] bashを利用しif .. then .. fi を利用したサンプルシェルスクリプトを以下に記します。 #contents #htmlinsertpcsp(linux_ads_top.html,linux-sp.html) * 関連記事 [#f0024f82] -[[if文のサンプルシェルスクリプト・ファイル・ディレクトリ編>逆引きシェルスクリプト/if文のサンプル・ファイル・ディレクトリ編]] -[[if文の条件式でand, or, notを使う方法>逆引きシェルスクリプト/if文の条件式でand, or, notを使う方法]] -[[case…esacのサンプルシェルスクリプト>逆引きシェルスクリプト/case…esacのサンプルシェルスクリプト]] * 数値比較方法 [#d4a7764e] 下表に記す文字列により、数値比較ができます。 |-eq|等しいかをチェック 数値 = 数値|''eq''ual| |-ne|異なるかをチェック 数値 ≠ 数値|''n''ot ''e''qual| |-lt|数値 < 数値をチェック|''l''ess ''t''han| |-le|数値 ≦ 数値をチェック|''l''ess than or ''e''qual| |-gt|数値 > 数値をチェック|''g''reater ''t''han| |-ge|数値 ≧ 数値をチェック|''g''reater than or ''e''qual| 数値の比較条件が成り立つ場合、$?に0がセットされます。~ 数値の比較条件が成り立たない場合は、$?に1がセットされます。~ このeq, ne, lt, le, gt, geなどは、<>が使えなかった時代のFORTRAN言語の表記を踏襲したらしいです。~ (正確な情報かは保証できませんが…) * 数値比較のサンプルシェルスクリプト [#cd53b98f] #ref(sample.sh) 以下のサンプルシェルスクリプトは、2つの数値引数を比較します。~ 尚、引数に数値以外の文字列を使用した場合のエラー処理は行っていません。 #!/bin/bash function usage { echo Usage: echo -e \\t`basename $0` num1 num2 exit 1 } if [ $# -ne 2 ]; then usage fi # -eq : equal if [ $1 -eq $2 ]; then echo "$1 = $2" fi # -ne : not equal if [ $1 -ne $2 ]; then echo "$1 != $2" fi # -lt : less than if [ $1 -lt $2 ]; then echo "$1 < $2" fi # -le : less than or equal if [ $1 -le $2 ]; then echo "$1 <= $2" fi # -gt : greater than if [ $1 -gt $2 ]; then echo "$1 > $2" fi # -ge : greater than or equal if [ $1 -ge $2 ]; then echo "$1 >= $2" fi * サンプルシェルスクリプトの実行結果 [#ab94552a] $ ./sample.sh 1 1 1 = 1 1 <= 1 1 >= 1 $ ./sample.sh 1 2 1 != 2 1 < 2 1 <= 2 $ ./sample.sh 2 1 2 != 1 2 > 1 2 >= 1 #htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
タイムスタンプを変更しない
#navi(../) * if文のサンプル・数値比較編 [#m6bac128] bashを利用しif .. then .. fi を利用したサンプルシェルスクリプトを以下に記します。 #contents #htmlinsertpcsp(linux_ads_top.html,linux-sp.html) * 関連記事 [#f0024f82] -[[if文のサンプルシェルスクリプト・ファイル・ディレクトリ編>逆引きシェルスクリプト/if文のサンプル・ファイル・ディレクトリ編]] -[[if文の条件式でand, or, notを使う方法>逆引きシェルスクリプト/if文の条件式でand, or, notを使う方法]] -[[case…esacのサンプルシェルスクリプト>逆引きシェルスクリプト/case…esacのサンプルシェルスクリプト]] * 数値比較方法 [#d4a7764e] 下表に記す文字列により、数値比較ができます。 |-eq|等しいかをチェック 数値 = 数値|''eq''ual| |-ne|異なるかをチェック 数値 ≠ 数値|''n''ot ''e''qual| |-lt|数値 < 数値をチェック|''l''ess ''t''han| |-le|数値 ≦ 数値をチェック|''l''ess than or ''e''qual| |-gt|数値 > 数値をチェック|''g''reater ''t''han| |-ge|数値 ≧ 数値をチェック|''g''reater than or ''e''qual| 数値の比較条件が成り立つ場合、$?に0がセットされます。~ 数値の比較条件が成り立たない場合は、$?に1がセットされます。~ このeq, ne, lt, le, gt, geなどは、<>が使えなかった時代のFORTRAN言語の表記を踏襲したらしいです。~ (正確な情報かは保証できませんが…) * 数値比較のサンプルシェルスクリプト [#cd53b98f] #ref(sample.sh) 以下のサンプルシェルスクリプトは、2つの数値引数を比較します。~ 尚、引数に数値以外の文字列を使用した場合のエラー処理は行っていません。 #!/bin/bash function usage { echo Usage: echo -e \\t`basename $0` num1 num2 exit 1 } if [ $# -ne 2 ]; then usage fi # -eq : equal if [ $1 -eq $2 ]; then echo "$1 = $2" fi # -ne : not equal if [ $1 -ne $2 ]; then echo "$1 != $2" fi # -lt : less than if [ $1 -lt $2 ]; then echo "$1 < $2" fi # -le : less than or equal if [ $1 -le $2 ]; then echo "$1 <= $2" fi # -gt : greater than if [ $1 -gt $2 ]; then echo "$1 > $2" fi # -ge : greater than or equal if [ $1 -ge $2 ]; then echo "$1 >= $2" fi * サンプルシェルスクリプトの実行結果 [#ab94552a] $ ./sample.sh 1 1 1 = 1 1 <= 1 1 >= 1 $ ./sample.sh 1 2 1 != 2 1 < 2 1 <= 2 $ ./sample.sh 2 1 2 != 1 2 > 1 2 >= 1 #htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
テキスト整形のルールを表示する
添付ファイル:
sample.sh
835件
[
詳細
]