在Linux的系統Shell指令碼中使用if語句的方法

來源:互聯網
上載者:User

   Bourne Shell 的 if 語句和大部分程式設計語言一樣 - 檢測條件是否真實,如果條件為真,shell 會執行這個 if 語句指定的代碼塊,如果條件為假,shell 就會跳過 if 代碼塊,繼續執行之後的代碼。

  if 語句的文法:

  代碼如下:

  if [ 判斷條件 ]

  then

  command1

  command2

  ……..

  last_command

  fi

Example:

#!/bin/bash

  number=150

  if [ $number -eq 150 ]

  then

  echo "Number is 150"

  fi

  if-else 語句:

  除了標準的 if 語句之外,我們還可以加入 else 代碼塊來擴充 if 語句。這麼做的主要目的是:如果 if 條件為真,執行 if 語句裡的代碼塊,如果 if 條件為假,執行 else 語句裡的代碼塊。

  文法:

  代碼如下:

  if [ 判斷條件 ]

  then

  command1

  command2

  ……..

  last_command

  else

  command1

  command2

  ……..

  last_command

  fi

  Example:

  代碼如下:

  #!/bin/bash

  number=150

  if [ $number -gt 250 ]

  then

  echo "Number is greater"

  else

  echo "Number is smaller"

  fi

  If..elif..else..fi 語句 (簡寫的 else if)

  Bourne Shell 的 if 語句文法中,else 語句裡的代碼塊會在 if 條件為假時執行。我們還可以將 if 語句嵌套到一起,來實現多重條件的檢測。我們可以使用 elif 語句(else if 的縮寫)來構建多重條件的檢測。

  文法 :

  代碼如下:

  if [ 判斷條件1 ]

  then

  command1

  command2

  ……..

  last_command

  elif [ 判斷條件2 ]

  then

  command1

  command2

  ……..

  last_command

  else

  command1

  command2

  ……..

  last_command

  fi

  Example :

  代碼如下:

  #!/bin/bash

  number=150

  if [ $number -gt 300 ]

  then

  echo "Number is greater"

  elif [ $number -lt 300 ]

  then

  echo "Number is Smaller"

  else

  echo "Number is equal to actual value"

  fi

  多重 if 語句 :

  If 和 else 語句可以在一個 bash 指令碼裡相互嵌套。關鍵詞 “fi” 表示裡層 if 語句的結束,所有 if 語句必須使用 關鍵詞 “fi” 來結束。

  基本 if 語句的嵌套文法:

  代碼如下:

  if [ 判斷條件1 ]

  then

  command1

  command2

  ……..

  last_command

  else

  if [ 判斷條件2 ]

  then

  command1

  command2

  ……..

  last_command

  else

  command1

  command2

  ……..

  last_command

  fi

  fi

  Example:

  代碼如下:

  #!/bin/bash

  number=150

  if [ $number -eq 150 ]

  then

  echo "Number is 150"

  else

  if [ $number -gt 150 ]

  then

  echo "Number is greater"

  else

  echo "'Number is smaller"

  fi

  fi

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.