Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxチュートリアル >> linuxシェルは4つの算術演算(整数と浮動小数点)を実装しています簡単な方法

linuxシェルは4つの算術演算(整数と浮動小数点)を実装しています簡単な方法

  

シェルバッチを書くことを学んだら、論理演算で基本演算をする必要があります:4算術。方法


1.簡単なメソッド

[chengmo @ centos5〜] $ b = $((5 * 5 + 5-3 /2))[chengmo @ centos5〜 ] $ echo $ b29


Linuxシェルでは、$(())
を使用して式を括弧で囲むと、演算機能を実行できます。


2.その他の方法:

:exprを使って操作を実行する


[chengmo @ centos5〜] $ expr 5 - 41


注意:exprの後に演算が必要な式を記述し、パラメータと演算記号の間にスペースがあることを確認してください。


カテゴリ構文の説明条件付き判定  expr1が0でもnullでもない場合、Expr2はexpr1を返します。それ以外の場合はexpr2を返します。 Expr1 \\& expr2 expr1もexpr2も0でもnullでもない場合はexpr1を返し、そうでない場合は0を返します。 4次演算expr1 + expr2は、expr1にexpr2を加えた値を返します。 Expr1 - expr2はexpr1からexpr2を引いた値を返します。 Expr1 \\ * expr2はexpr1にexpr2を掛けた値を返します。 Expr1 /expr2はexpr2を除くexpr1の値を返します。 Expr1%expr2は、expr2を除くexpr1の残りを返します。サイズ判定expr1 \\> expr2 expr1がexpr2より大きい場合は1を返し、それ以外の場合は0を返します。 expr1とexpr2の両方が数字の場合は、数字のサイズで判断され、それ以外の場合は単語で判断されます。以下は同じです。 Expr1 \\< expr2 expr1がexpr2より小さい場合は1を返し、そうでない場合は0を返します。 Expr1 = expr2 expr1がexpr2と等しい場合は1を返し、そうでない場合は0を返します。 Expr1!= expr2 expr1がexpr2と等しくない場合は1を返し、そうでない場合は0を返します。 Expr1 \\> = expr2 expr1がexpr2以上の場合は1を返し、それ以外の場合は0を返します。 Expr1 \\< = expr2 expr1がexpr2以下の場合は1を返し、それ以外の場合は0を返します。ワードプロセッサexpr1:expr2固定文字列、すなわち正規表現を比較します。以下の文字を使用して補助することができます:

1文字に一致します。

$文字列の終わりを探します。

[list]リストにマッチする文字列を見つけます。

* *の前に0個以上の単語があります。

\\(\\)括弧に一致する文字列を返します。 。



3浮動小数点演算:

[chengmo @ centos5〜] $ exprを5.0から4式expr:不正なパラメータ


[chengmo @ centos5〜] $ echo $((5.0-4)) - bash:5.0-4:式中の文法エラー(エラートークンは" .0-4")< Br>


上記の結果から、上記の式は浮動小数点演算をサポートするのに十分ではないと思われます。データを確認した結果、bashは浮動小数点演算をサポートしていないことがわかりました浮動小数点演算を実行する必要がある場合は、bc、awk処理を使用する必要があります。


方法1:

[chengmo @ centos5〜] $ c = $(echo" 5.01-4 * 2.0" Bc)[chengmo @ centos5〜] $ echo $ c-2.99

方法2:

[chengmo @ centos5〜] $ c = $(awk 'BEGIN {print 7.01 * 5-4.01} [chengmo @ centos5〜] $ echo $ c31.04


注意:$()はシェルの ``と同等です。真ん中はコマンド文の実行を含み、実行結果を返します。

Copyright © Windowsの知識 All Rights Reserved