1. 程式人生 > >Linux Shell程式設計--雙括號

Linux Shell程式設計--雙括號

linux shell (())雙括號運算子

在剛開始學習inux 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 $((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 都可以拋到一邊了。

相關推薦

Linux Shell程式設計--括號

linux shell (())雙括號運算子 在剛開始學習inux shell指令碼程式設計時候,對於它的 四則運算以及邏輯運算。估計很多朋友都感覺比較難以接受。特變邏輯運算子”[]”使用時候,必須保證運算子與算數 之間有空格。 四則運算也只能藉助:let,expr等命令完

linuxshell中(())括號運算子的使用詳解

在剛開始學習inux shell指令碼程式設計時候,對於它的 四則運算以及邏輯運算。估計很多朋友都感覺比較難以接受。特變邏輯運算子”[]”使用時候,必須保證運算子與算數 之間有空格。 四則運算也只能藉助:let,expr等命令完成。 今天講的雙括號”(())”結構語句,

kali Linux shell程式設計基礎到進階

前幾天在群裡聽他們說不會shell程式設計就不算會linux,嘿,就我這暴脾氣,學!幹!嘿嘿!行了,不扯犢子了,犢子要生氣了,最近學習了shell,感觸頗多,我也參考了其他大佬的經驗,看著視訊課,學了些許基礎,其實也就是那回事,認認真真踏踏實實的學,是能學到東西的,還有,要是自學的話,一定要能坐

Linux Shell程式設計 17 巢狀迴圈

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Linux Shell 程式設計基礎

什麼是shell? 在Linux核心與使用者之間的直譯器程式 — 通常指/bin/bash(預設直譯器) — 負責向核心翻譯及傳達使用者/程式指令 —相當於作業系統的“外殼”   互動式    ——命令列 — 人工干預、智慧化程度高;

Linux Shell程式設計 awk命令

概述 awk是一種程式語言,用於在linux/unix下對文字和資料進行處理。資料可以來自標準輸入(stdin)、一個或多個檔案,或其它命令的輸出。它支援使用者自定義函式和動態正則表示式等先進功能,是linux/unix下的一個強大程式設計工具。它在命令列中使用,但更多是作為指令碼來使用。awk有很多內建的

Linux Shell程式設計 sed命令

概述 sed命令用來選取、替換、刪除、新増資料 sed 是一種幾乎可以應用在所有 UNIX 平臺(包括 Linux)上的輕量級流編輯器。sed 有許多很好的特性。首先,它相當小巧,通常要比你所喜愛的指令碼語言小多倍。其次,因為 sed 是一種流編輯器,所以,它可以對從如管道這樣的標準輸入中接收的

Linux Shell程式設計 test命令

概述 test 命令是Shell 指令碼中用來進行條件判斷的。 test命令示例 按照檔案型別進行判斷 測試選項 作 用 -b 檔案 判斷該檔案是否存在,並且是否為塊裝置檔案(是塊裝置檔案為真) -c 檔案 判斷

Linux Shell程式設計 條件判斷語法

if條件判斷語句 單分支 if 條件語句 語法格式: if [條件判斷式];then 程式 fi 或者 if [條件判斷式] then 程式 fi 在使用單分支 if 條件查詢時需要注意幾點: if 語句使用 fi 結尾,和一般語言使用大括號結尾不同。 [

Linux Shell程式設計 迴圈語法

for迴圈 for 迴圈是固定迴圈,也就是在迴圈時已經知道需要進行幾次迴圈。有時也把 for 迴圈稱為計數迴圈。語法: for 變數 in 值1 值2 值3… do 程式 done 在這種語法中,for 迴圈的次數取決於 in 後面值的個數(以空格分隔),有幾個值就迴圈幾次,並且每次迴圈

Linux Shell程式設計基礎入門

shell指令碼通常以#!/bin/bash 起始 指令碼的執行方式有兩種。 將指令碼名作為命令列引數: bash myScript.sh 授予指令碼執行許可權,將其變為可執行檔案: chmod 755 myScript.sh ./myScript.sh

Linux shell程式設計基礎

一、linux常用命令     1.修改機器名稱(實質上是機器的域名,相當於www.baidu.com):vim /etc/hostname      2.關閉機器:shutdown -h now 或者 reboot -h now來直接重啟     3.檢視ip地址:ifco

如何在 Linux Shell 程式設計中定義和使用函式

函式是一段可複用的程式碼。我們通常把重複的程式碼放進函式中並且在不同的地方去呼叫它。庫是函式的集合。我們可以在庫中定義經常使用的函式,這樣其它指令碼便可以不再重複程式碼而使用這些函式。 呼叫函式 在 Shell 中呼叫函式和呼叫其它命令是一模一樣的。例如,如果你

Linux shell程式設計常用語法

1 常用語法 1.1 shell程式設計空格注意事項 shell 程式設計空格注意事項https://blog.csdn.net/codeheng/article/details/51177344?fr

Linux Shell 程式設計 迴圈控制 條件控制 輸入引數等

1. 傳入指令碼引數 $# 是傳給指令碼的引數個數  $0 是指令碼本身的名字  $1是傳遞給該shell指令碼的第一個引數  $2是傳遞給該shell指令碼的第二個引數  [email protected] 是傳給指令碼的所有引數的列表 2. 建立一個新檔案

Linux Shell程式設計(17)——巢狀迴圈

巢狀迴圈就是在一個迴圈中還有一個迴圈,內部迴圈在外部迴圈體中.在外部迴圈的每次執行過程中都會觸發內部迴圈,直到內部迴圈執行結束.外部迴圈執行了多少次,內部迴圈就完成多少次.當然,不論是外部迴圈或內部迴圈

linux shell 程式設計基礎筆記

1.變數 命名規則,只能以數字,字母,下劃線開始 命名只能使用英文字母,數字和下劃線,首個字元不能以數字開頭。 中間不能有空格,可以使用下劃線(_)。 不能使用標點符號。 不能使用bash裡的關鍵字(可用help命令檢視保留關鍵字)  舉例說明 RUNOOB LD_LI

linux shell程式設計之利用環境變數IFS自定義分隔符

預設情況下,bash shell將空格符、製表符、換行符看作是欄位分隔符,如果遇到這些字元,bash shell就會認為字元後是一個新的欄位,這就帶來一種困擾:如果我們想處理包含空格、製表符、換行符的字元就會有麻煩了。bash提供了一種自定義分隔符的機制:環境變數IFS定義

linux shell程式設計

條件選擇 if -then  語句 if command then commands fi 另一種形式 if command; then commands fi 關於退出狀態碼,你只需要記住:正常退出(命令執行正常)的狀態碼是0, 非正常退出的狀態碼不是0(有不少)

LINUX SHELL程式設計從初學到精通 高清完整 .pdf版

shell是使用者與核心進行互動操作的一種介面,是linux最重要的軟體之一。目前最流行的shell稱為bash shell,bash shell指令碼程式設計以其簡潔、高效而著稱,多年來成為linux程式設計師和系統管理員解決實際問題的利器。 《linux