国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

linux shell (()) 雙括號運算符使用

2020-07-10 12:03:20
字體:
來源:轉載
供稿:網友
估計很多朋友都感覺比較難以接受。特變邏輯運算符”[]”使用時候,必須保證運算符與算數 之間有空格。 四則運算也只能借助:let,expr等命令完成。 今天講的雙括號”(())”結構語句,就是對shell中算數及賦值運算的擴展。
使用方法:

語法:

((表達式1,表達式2…))

特點:

1、在雙括號結構中,所有表達式可以像c語言一樣,如:a++,b--等。
2、在雙括號結構中,所有變量可以不加入:“$”符號前綴。
3、雙括號可以進行邏輯運算,四則運算
4、雙括號結構 擴展了for,while,if條件測試運算
5、支持多個表達式運算,各個表達式之間用“,”分開

使用實例:
擴展四則運算

復制代碼
代碼如下:

#!/bin/sh
a=1;
b=2;
c=3;
((a=a+1));
echo $a;
a=$((a+1,b++,c++));
echo $a,$b,$c

運行結果:

sh testsh.sh
2
3,3,4

雙括號結構之間支持多個表達式,然后加減乘除等c語言常用運算符都支持。如果雙括號帶:$,將獲得表達式值,賦值給左邊變量。

擴展邏輯運算

復制代碼
代碼如下:

#!/bin/sh
a=1;
b="ab";

echo $((a>1?8:9));
((b!="a"))&& echo "err2";
((a<2))&& echo "ok";

運行結果:

sh testsh.sh
9
err2
ok

擴展流程控制語句(邏輯關系式)

復制代碼
代碼如下:

#!/bin/sh
num=100;
total=0;
for((i=0;i<=num;i++));
do
((total+=i));
done
echo $total;
total=0;
i=0;
while((i<=num));
do
((total+=i,i++));
done
echo $total;
if((total>=5050));then
echo "ok";
fi

運算結果:

sh testsh.sh
5050
5050
ok

有了雙括號運算符:[[]],[],test 邏輯運算,已經let,expr 都可以拋到一邊了。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嵊州市| 泗阳县| 包头市| 梅州市| 靖安县| 保靖县| 民权县| 南岸区| 海阳市| 柳江县| 库车县| 夏津县| 万源市| 卢氏县| 闽清县| 望都县| 三穗县| 尚志市| 富锦市| 胶州市| 清丰县| 漾濞| 庆安县| 麻城市| 砚山县| 木兰县| 来宾市| 东城区| 奉贤区| 周宁县| 临朐县| 屯留县| 门头沟区| 吉木萨尔县| 库车县| 绥宁县| 香河县| 宜宾市| 班戈县| 黄浦区| 安国市|