在剛開始學習inux shell指令碼程式設計時候,對於它的 四則運算以及邏輯運算。估計很多朋友都感覺比較難以接受。特變邏輯運算子」」使用時候,必須保證運算子與算數 之間有空格。 四則運算也只能借助:let,expr等命令完成。 今天講的雙括號」(())」結構語句,就是對shell中算數及賦值運算的擴充套件
使用方法:
1語法:2
3((表示式1,表示式2…))45
特點:6
71、在雙括號結構中,所有表示式可以像c語言一樣,如:a++,b--等。89
2、在雙括號結構中,所有變數可以不加入:「$」符號字首。
1011
3、雙括號可以進行邏輯運算,四則運算
1213
4、雙括號結構 擴充套件了for,while
,if條件測試運算
1415
5、支援多個表示式運算,各個表示式之間用「,」分開
使用例項:
1 #!/bin/sh23 a=1
;4 b=2
;5 c=3;6
7 ((a=a+1
));8
echo $a;
910 a=$((a+1,b++,c++));
11 echo $a,$b,$c
執行結果:
sh testsh.sh
23,3,4
雙括號結構之間支援多個表示式,然後加減乘除等c語言常用運算子都支援。如果雙括號帶:$,將獲得表示式值,賦值給左邊變數。
擴充套件邏輯運算
1 #!/bin/sh23 a=1
;4 b="ab"
;5 echo $((a>1?8:9
));6
7 ((b!="
a"))&& echo "
err2";
8 ((a<2))&& echo "
ok";
執行結果:
sh testsh.sh
9err2
ok擴充套件流程控制語句(邏輯關係式)
1 #!/bin/sh23 num=100
;4 total=0;5
6for((i=0;i<=num;i++));7do
8 ((total+=i));
9done
10echo $total;
1112 total=0
;13 i=0;14
while((i<=num));
15do
16 ((total+=i,i++));
17done
18echo $total;
1920
if((total>=5050
));then
21 echo "ok"
;22 fi
運算結果:
sh testsh.sh
5050
5050
ok
Kotlin學習 集合操作符之總數操作符
原集合 val list num arraylist arraylistof 1,2,3,5,6,7,8 1.any 只要有乙個符合就返回true 操作符 val any list num.any 結果 any true 2.all 集合中所有元素都滿足函式才返回true 操作符 val all l...
Kotlin學習 集合操作符之生產操作符
生產操作符需要兩個原生集合來進行生產,所以先定義兩個原生集合 val list num arraylist arraylistof 1,2,3,5,6,7,8,7,6,5,4,3 val list num two arraylist arraylistof 10,11,12,13,14,15,16 ...
Linux 命令之 tar 操作符
c 建立壓縮檔案 x 解壓 t 檢視內容 r 向壓縮歸檔檔案末尾追加檔案 u 更新原壓縮包中的檔案 這五個是獨立的命令,壓縮解壓都要用到其中乙個,可以和別的命令連用但只能用其中乙個。下面的引數是根據需要在壓縮或解壓檔案時可選的。z 有gzip屬性的 j 有bz2屬性的 z 有compress屬性的 ...