1. 程式人生 > >如何在Linux命令列中進行基本的數學運算

如何在Linux命令列中進行基本的數學運算

如何在Linux命令列中進行基本的數學運算

expr命令

Linux中的expr或expression命令是用於執行數學計算的最常用命令。您可以使用此命令執行加法,減法,乘法,除法,遞增值等功能,甚至可以比較兩個值。在本節中,我們將描述執行上述計算的語法,並介紹如何使用expr命令在Ubuntu命令列中執行高效數學運算。

加法

您可以通過expr命令新增兩個或多個數字,如下所示:

$ expr number1 + number2

示例:

$ expr 100 + 90

如何在Linux命令列中進行基本的數學運算

減法

您可以通過expr命令對兩個或多個數字執行減法,如下所示:

$ expr number1 – number2

示例:

$ expr 100 - 27

如何在Linux命令列中進行基本的數學運算

乘法

您可以通過expr命令執行兩個或多個數字的乘法,如下所示:

$ expr number1 \* number2

示例:

[email protected]:~/www.linuxidc.com$ expr 11 \* 10

如何在Linux命令列中進行基本的數學運算

請注意,以下是Linux命令列中數字乘法的語法也可以。

如何在Linux命令列中進行基本的數學運算

除法

您可以通過expr命令將一個數字初一另一個數,如下所示:

$ expr number1 / number2

示例:

$ expr 110 / 10

如何在Linux命令列中進行基本的數學運算

增加變數

您可以通過首先定義Linux中的變數來增加它,如下所示:

$ count_variable=9

然後,使用以下表達式,使用expr命令執行增量操作:

$ count_variable=`expr $count_variable + 7`

現在,當您通過以下命令回顯該變數值時,它將列印最初定義的變數的遞增值。

$ echo $count_variable

如何在Linux命令列中進行基本的數學運算

比對

通過expr命令,您還可以檢查數字是否大於另一個數字。

$ expr number1 \> number2

示例:

$ expr 16 \> 11

如何在Linux命令列中進行基本的數學運算

結果值1表示第一個數字大於第二個數字。 而結果值0表示第一個數不大於第二個。

示例:

$ expr 11 \> 26

如何在Linux命令列中進行基本的數學運算

通過expr命令,您還可以使用以下語法檢視兩個數字是否相等:

$ expr number1 = number2

示例s:

$ expr 19 = 19
$ expr 11 = 15

如何在Linux命令列中進行基本的數學運算

結果值1表示第一個數字等於第二個數字。

而結果值0表示兩個數字不相等。

在上面的例子中,我們可以很明顯看到兩個比較數字是否相等。

那麼這個操作怎麼有用呢?

讓我們假設在一個程式中,我們想知道一些數字的計算平均值是否等於10。

在這裡,我們可以充分利用expr命令將“average”變數的結果與10進行比較,並根據此結果執行進一步的操作。

$ average=20
$ expr $average = 20

如何在Linux命令列中進行基本的數學運算

高效地使用expr命令

讓我們舉一個expr命令實際上可以生效的例子。在這個例子中,我們將使用expr命令來計算當有20個孩子和158塊糖果時,一個孩子得到了多少糖果。該程式還將計算所有孩子得到相同數量的糖果後剩下的糖果數量。

如何在Linux命令列中進行基本的數學運算

輸出完美地顯示了每個孩子平均得到12塊,剩下2塊在罐子裡。

jot命令

Linux jot命令可幫助您根據您提供的值建立數字列表,作為起始編號和要在其後檢視的值的數量。

在本節中,我們將描述通過jot執行計算的語法,並介紹如何使用jot命令在Ubuntu命令列中執行高效數學運算。

您可能首先需要安裝Athena-jot才能在Ubuntu上使用jot命令。

輸入以下命令作為sudo,因為只有授權人員才能在Ubuntu上新增/刪除和配置軟體:

如何在Linux命令列中進行基本的數學運算

系統可能會提示您使用Y/n選項確認繼續安裝。

請輸入Y然後按Enter鍵繼續,之後軟體將安裝在您的系統上。

在數字y之後列印x個數字

使用jot命令,您可以在數字y之後列印x個數值。請使用以下命令:

使用以下命令執行此操作:

$ jot x y

以下示例將為您解決問題:

$ jot 6 2

如何在Linux命令列中進行基本的數學運算

我們的示例輸出顯示數字2(y)後面的6(x)個值列表。

在數字y之後反轉列印x個數字,直到數字z

您還可以使用jot命令來反向列印數字y後面的x個值,以數字z結尾。

使用以下語法執行此操作:

$ jot x y z

以下的例子會讓你明白:

$ jot 5 10 1

如何在Linux命令列中進行基本的數學運算

我們的示例輸出反向顯示數字10(y)之前的5(x)值,直到列表達到數字1(z)。

高效地使用jot命令

讓我們給出一個示例,其中jot命令實際上是有效的。在本例中,我們將使用jot命令從第1天(y值)開始列印12月份的9天(x值)。

$ for i in `jot 9 1`; do echo December$i; done

這是輸出:

如何在Linux命令列中進行基本的數學運算

我們通過使用jot命令的輸出作為變數i的輸入值來使用for迴圈。

factor命令

從名稱可以清楚地看出,Linux中的factor命令用於計算我們提供數字的質因數。

語法:

$ factor number

示例:

如何在Linux命令列中進行基本的數學運算

在上面的示例中,您可以看到factor命令如何列印除23以外的給定數字的多個質因數,因為數字23除了它自己沒有其他質因數。

bc命令

在bash中執行復雜操作時,bc命令非常有用。 此命令還可以進行比較,處理布林值,計算平方根,正弦,餘弦和切線等。您需要做的就是將數學表示式傳遞給bc命令,如下所示:

$ echo “math_expression” | bc

然後輸出顯示數學表示式的結果。

示例:

$ echo "10+10/2-(2*3)" | bc

如何在Linux命令列中進行基本的數學運算

計算π

由於bc命令不會迴避精度,並且您想要輸入的字串非常簡單,您可以使用它來計算pi的值到您想要的小數點數。

在下面的示例中,我們通過指定一個縮小值來舍入十進位制來列印π的值。

$ echo "scale=3; 4*a(1)" | bc -l

如何在Linux命令列中進行基本的數學運算

由於是保留3位小數,圓周率的結果將被精確到小數點後三位。

echo "scale=11; 4*a(1)" | bc -l

如何在Linux命令列中進行基本的數學運算

由於是保留11位小數,圓周率的結果將被精確到小數點後11位。

執行Bash數學運算

您可以使用一組雙括號來執行簡單的bash數學運算。 您可以通過此技術在bash中執行算術運算和布林運算。

算術

可以在Linux bash中執行以下算術運算列表:

+, – 加、減
++, — 增量、減量
*, / , % 乘、除、餘數
** 指數的值

示例 1:

$ ((x=10))
$ (( e = e + 5 ))
$ echo $e

示例 2:

$ ((x=10))
$ ((x--))
$ echo $e

示例 3:

$ ((x=10))
$ ((x=x**2))
$ echo $e

布林和邏輯

bash數學還允許您在疑問括號內使用布林和邏輯表示式來執行數學計算。

例:

$ ((x=10)); ((y=5))

if (( x > y )); then echo $x; fi

如何在Linux命令列中進行基本的數學運算

此示例比較兩個變數,並僅在x大於y時輸出x的值。

通過本文中提供的命令語法和示例,您現在可以通過Linux bash執行基本的數學運算。 這將作為您執行更復雜操作的基礎,例如使用bash指令碼編寫程式。 此外,您還可以執行互動式數學,您可以從使用者輸入值,處理輸入,然後根據這些值輸出結果。