Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxチュートリアル >> シェルでの数学的計算のまとめ

シェルでの数学的計算のまとめ

  

シェルでの代入と操作はすべてデフォルトで文字列処理です。シェルで数学的な操作を実行するための特別な方法がいくつかあります。

1、間違った方法の例a)var = 1 + 1 echo $ varの出力が1 + 1、tragedy、huh、huh

b)var = 1 var = $ var + 1 echo $ varの出力結果は1 + 1、まだ悲劇です、ハァッ、ハァッ

2、正しい方法1)let var = 1 let" var + = 1" echo $ varの出力は2、今回は悲劇ではありません。ほぼすべての演算子をサポートするようにテストした後、インターネット上で次のような記事を見ました。「++、---およびカンマ、(、)'はサポートされません。 b)べき乗演算では、 "**" c)パラメータを使用して、$ dを追加せずに直接式にアクセスする必要があります。通常、算術式には二重引用符を付けないことができます。ただし、式の中にbashでキーワードが含まれている場合は、e)を追加する必要があります。letの後の式では、整数演算しか実行できません。

2)Use(())var = 1((va) r + = 1))echo $ var出力は2です。注:(())はletと同じように使用されます。

3)$ [] var = 1 var = $ [$ var + 1] echoを使用$ var output result bit 2注:a)$ []は結果を計算するための括弧内の式を数学演算として使用し、次に$ c)を追加する前に$ []内の変数にアクセスするためにb)を出力します。演算子はletと同じですが、整数演算のみをサポートします。

4)expr var = 1 var = `expr $ var + 1` echo $ varを使います。出力は2です。注:a)exprの後の式シンボルはスペースで区切られていますb)exprでサポートされている演算子は次のとおりです。 、&​​&、<、< =、!=、> =、>、+、 - 、*、/、%c)exprでサポートされている演算子は、\\を使用してエスケープする必要があります。持っている: 、&​​&、<、< =、>、* e)exprも整数演算のみをサポートしています。

5)bcを使用します(浮動小数点計算を実行できます)。var = 1 var = `エコー「$ var + 1」| Bc` echo $ var出力は2です。はじめに:bcは、linuxの単純な計算機です。浮動小数点計算をサポートしています。コマンドラインにbcと入力して計算プログラムに入り、プログラム内の浮動小数点数を直接計算します。単純なパイプラインを使って問題を解決してください。注:1)ビット演算子を除くすべての演算子をサポートするためにbcをテストしました。 2)精度を設定するためにbcはscaleを使うべきです3)浮動小数点数の計算例var = 3.14 var = `echo“ scale = 2; $ var * 3” | Bc` echo $ var出力は9.42です。

6)awkを使用します(これは浮動小数点計算に使用できます)。var = 1 var = `echo" $ var 1" Awk '{printf("%g"、$ 1 * $ 2)}' `echo $ var出力は2です。はじめに:awkは、プログラミング言語としてのテキスト処理ツールおよびプログラミング言語です。 Awkはさまざまな演算をサポートしており、浮動小数点計算にはawkを使用できます上記のbcと同様に、単純なパイプラインを介して、浮動小数点計算用にプログラム内で直接awkを呼び出すことができます。注:1)awkはマイクロ演算子を除くすべての演算子をサポートします。2)awkはlog、sqr、cos、sinなどの組み込み関数を持ちます。3)浮動小数点数の計算例var = 3.14 var = `echo" $ var 2"; | Awk '{printf("%g"、sin($ 1 /$ 2))} `` echo $ var出力は1 3です。まとめ最後に、収集できるすべての情報を読み終えたら、最後に自分のセットを要約します。何か、私は後で似たような問題を見るでしょう、笑〜

Copyright © Windowsの知識 All Rights Reserved