shell基礎知識學習二

來源:互聯網
上載者:User

條件運算式:

1、檔案運算式

#如果檔案存在if [ -f file ] #如果目錄存在if [ -d dir ]#如果檔案存在且非空if [ -s file ]#如果檔案存在且可讀if [ -r file ]#如果檔案存在且可寫if [ -w file ]#如果檔案存在且可執行if [ -x file ]

2、整數運算式

#如果a等於bif [ a -eq b ]#如果a不等於bif [ a -ne b ]#如果a大於bif [ a -gt b ]#如果a大於等於bif [ a -ge b ]#如果a小於bif [ a -lt b ]#如果a小於等於bif [ a -le b ]

3、字串變數

a=''b=''#如果a等於bif [ ${a} = ${b} ]#如果a不等於bif [ ${a} != ${b} ]#如果a非空if [ -n ${a} ]#如果a為空白,長度為0if [ -z ${a} ]

 

=放在if中就是字串的等於,在別的地方就是賦值。等號作為賦值和等於的時候,寫法上是有很大區別的:賦值等號兩邊不能有空格,等於等號兩邊必須有空格。

判斷字串非空上面的方式測試不正確,但是看很多資料上都是這麼說的(不推薦)。下面這種方式是經過測試的

if  [ ${a} ]  如果a為空白走else。

4、邏輯運算式

  4.1、非  if [ ! 運算式 ]

  4.2、與

  if [ 運算式   -a   運算式 ]   或者  if [ 運算式 ]   &&  [ 運算式 ]

 

echo 'write path:'read pathif [ -d ${path} -a -n ${path} ]then  echo '---'else echo '+++'fi

判斷輸入是目錄同時不為空白串
執行結果:  --- 

 4.3、或

  if [ 運算式   -o  運算式 ]  或者  if [ 運算式  ]  ||  [ 運算式 ]

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.