1. 程式人生 > >shell--條件測試語句和流程控制語句的使用

shell--條件測試語句和流程控制語句的使用

1. test 判斷

  test $num1 == $num2    #判斷是否相等

  echo $?

  test $num != $num2

  test $str                              #判斷字串是否非空,非空結果為0

  test -z $str                          #判斷字串是否為空,為空結果為0

  判斷常用符號("是"結果為0):

  -eq    #相等

  -ne    #不等

  -ge    #大於等於

  -gt     #大於

  -le     #小於等於

  -lt      #小於

  檔案測試:(“是”結果為0)

  test -f file1    #file1是否是一個檔案

  test -d file1   #file1是否是一個目錄

  test -x file1    #file1是否具有可執行許可權

  test -r file1

  test -w file1

  test -e file1   #file1是否為空

  test -s file1   #file1非空則為0

2. 流程控制

  單分支語句:

if [ -f file1 ];then     #“[]”內側有空格

    echo "file1 is a file"

  else

     echo "file1 is not a file"

  fi                               #條件語句以此結尾

  多分支語句:

if  [ -f file1 ];then

    echo "file1 is a file"

  elif [ -d file1 ];then

    echo "file1 is a dir"

  else

    echo "unknown type"

  fi