shell 運算符

linux有三類運算符

 1,算術運算符 2,邏輯運算符 3,比較運算符

算術運算符可以讓計算機對數據或包含數據的變量進行加,減,乘,除等工作。


+    兩數相加

-    兩數相減

*    兩數相乘

/    兩數相除

%    兩數相除並取餘

兩數想加,用加運算符(+)

let a=1

let b=1

let sum="$a + $b"

(注意),等號(=)兩邊沒有空格,而加號(+)兩邊有空格,且對所有的運算符而言兩邊都要求有空格。

指令說明如下:

let a=30 讓計算機建立一個名爲a的變量,並將值30賦給它。

let b=20 讓計算機建立一個名爲b的變量,並將值10賦給它。

let sum="$a + $b 讓計算機建立一個名爲sum的變量,並將a和b相加後的值賦給它。


減運算符

兩數相減用減運算符(-)

let a=3000 讓計算機建立一個名爲a的變量,並將值3000賦給它。

let b=2500 讓計算機建立一個名爲b的變量,並將值2500賦給它。

let sum="$a - $b 讓計算機建立一個名爲sum的變量,並將a和b相減後的值賦給它。


乘運算符

兩數相乘運算符(*)

let a=100 讓計算機建立一個名爲a的變量,並將值100賦給它。

let b=5   讓計算機建立一個名爲b的變量,並將值5賦給它。

let sum="$a * $b 讓計算機建立一個名爲sum的變量,並將a和b相乘後的值賦給它。


除運算符

兩數相除運算符(/)

let a=500 讓計算機建立一個名爲a的變量,並將值500賦給它。

let b=5   讓計算機建立一個名爲b的變量,並將值5賦給它。

let sum="$a / $b" 讓計算機建立一個名爲sum的變量,並將a和b相除後的值賦給它。


取餘運算符(%)

let a=10 讓計算機建立一個名爲a的變量,並將值500賦給它。

let b=3   讓計算機建立一個名爲b的變量,並將值5賦給它。

let sum="$a % $b" 讓計算機建立一個名爲sum的變量,並將a和b相除取餘後的值賦給它。


邏輯運算符


!  非運算符,它做出與邏輯相反的判斷。

&&  與運算符,它比較兩個變量的值,二者都是真的時,它做出的判斷纔是真,否則爲假。

||  或運算符,當兩個變量之中有一個是真時它做出的判斷就是真,僅當二者都爲假時,它做出的判斷纔是假。


比較運算符


比較運算符讓計算機比較兩個數或兩個字符串的值,來決定它們之間的關係是等於,不等於,大於或者小於。


運算符

-eq     等於

-ne     不等於

-gt     大於

-ge     大於或等於

-h      小於

-le     小於或等於


牢記  (真值是任何一個非零的值,假值就是零)


要判斷兩個值是否相同,用等於運算符(-eq).注意,在連字符(-)和eq之間沒有空格。


下面例子說明

let a=3000          讓計算機建立一個名爲a的變量,並將值3000賦給它

let b=2000          讓計算機建立一個名爲a的變量,並將值2000賦給它 

test $a -eq $b      讓計算機檢驗兩個變量a和b的值是否相等。如果相等,test返回一個真值,否則                     返回一個假值。

echo"$?"



要判斷兩個值是否不相等,用不等於運算符(-ne)


下面例子說明


let a=3000            讓計算機建立一個名爲a的變量,並將值3000賦給它

let b=2000            讓計算機建立一個名爲a的變量,並將值2000賦給它  

test $a -ne $b        讓計算機檢驗兩個變量a和b的值是否不相等。如果不相等,test返回一個真                         值,否則返回一個假值。

echo"$?"


爲了判斷第一個變量的值是否大於第二個變量的值,用大於運算符(-gt).


下面例子說明

let a=3000            讓計算機建立一個名爲a的變量,並將值3000賦給它

let b=2000            讓計算機建立一個名爲a的變量,並將值2000賦給它  

test $a -gt $b        讓計算機檢驗變量a的值是否大於變量b的值,。如果大於,test返回一個真                         值,否則返回一個假值。

echo"$?"


爲了判斷第一個變量的值是否大於或等於第二個變量的值,使用大於或等於運算符(-ge).


下面例子說明


let a=3000            讓計算機建立一個名爲a的變量,並將值3000賦給它

let b=2000            讓計算機建立一個名爲a的變量,並將值2000賦給它  

test $a -ge $b        讓計算機檢驗變量a的值是否大於或者等於變量b的值,。如果大於或等於,                         test返回一個真值,否則返回一個假值。

echo"$?"



爲了判斷第一個變量的值是否小於第二個變量的值,用小於運算符(-lt)


下面例子說明



let a=3000            讓計算機建立一個名爲a的變量,並將值3000賦給它

let b=2000            讓計算機建立一個名爲a的變量,並將值2000賦給它  

test $a -lt $b        讓計算機檢驗變量a的值是否小於變量b的值,。如果小於,test返回一個真                         值,否則返回一個假值。

echo"$?"


爲了判斷第一個變量的值是否小於或等於第二個變量的值,用小於或等於運算符(-le)


下在例子說明

let a=3000            讓計算機建立一個名爲a的變量,並將值3000賦給它

let b=2000            讓計算機建立一個名爲a的變量,並將值2000賦給它  

test $a -le $b        讓計算機檢驗變量a的值是否小於或等於變量b的值,。如果小於或等於,test                       返回一個真值,否則返回一個假值。

echo"$?"


牢記 真值是1,假值是0.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章