導航:首頁 > 編程語言 > shell編程括弧

shell編程括弧

發布時間:2025-03-29 17:14:51

linux shell ) 雙括弧運算符使用

估計很多朋友都感覺比較難以接受。特變邏輯運算符」[]」使用時候,必須保證運算符與算數 之間有空格。 四則運算也只能藉助: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 $((a1?8:9));

   ((b!="a")) echo "err2";

   ((a2)) 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 都可以拋到一邊了。

❷ linux shell:能從原理上給我講講為什麼要寫 ((a=$a+1))

a=3
假如不加兩個括弧,系統以為是字元串的形式,結果為
「3+1」,這個是字元串
加了兩個括弧,讓系統知道了裡面的值要進行運算,結果為
「4」
至於為什麼加一個括弧不行,是因為運算的格式就是要加兩個括弧
因為一個括弧的格式代表其他的作用

❸ shell中單中括弧和雙中括弧的區別

測試時,[ ]單中括弧與test語句作用一樣,雙中括弧可以支持更多的測試操作
用於正則表達式時,雙中括弧可以表示一類字元如[[:alpha:]]表示字母

閱讀全文

與shell編程括弧相關的資料

熱點內容
數組倒序演算法 瀏覽:308
安卓車機音質差為什麼還換 瀏覽:447
安卓系統如何關閉運動 瀏覽:521
程序員代碼面試指南pdf 瀏覽:700
以管理員身份運行cmd命令快捷鍵 瀏覽:553
mysql加密表 瀏覽:266
aws輕量雲伺服器 瀏覽:292
x86反編譯arm 瀏覽:752
服裝分銷哪個app好 瀏覽:407
php接收python數據 瀏覽:56
小安卓怎麼找到app根目錄 瀏覽:945
中興路由器查看mac命令 瀏覽:947
金稅盤安全接入伺服器地址怎麼獲得 瀏覽:965
linux命令與shell腳本 瀏覽:98
土巴兔網站源碼 瀏覽:21
基於單片機的音樂門鈴的設計 瀏覽:776
程序員要出差跟線的是做什麼的 瀏覽:777
慕課網python工程師就業班怎麼樣 瀏覽:856
假手機銀行源碼 瀏覽:315
有了我的命令又遵守的 瀏覽:269