日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Shell case esac语句

發布時間:2024/4/11 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Shell case esac语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
case ... esac 與其他語言中的 switch ... case 語句類似,是一種多分枝選擇結構。

case 語句匹配一個值或一個模式,如果匹配成功,執行相匹配的命令。case語句格式如下:
case 值 in 模式1)command1command2command3;; 模式2)command1command2command3;; *)command1command2command3;; esac case工作方式如上所示。取值后面必須為關鍵字 in,每一模式必須以右括號結束。取值可以為變量或常數。匹配發現取值符合某一模式后,其間所有命令開始執行直至 ;;。;; 與其他語言中的 break 類似,意思是跳到整個 case 語句的最后。

取值將檢測匹配的每一個模式。一旦模式匹配,則執行完匹配模式相應命令后不再繼續其他模式。如果無一匹配模式,使用星號 * 捕獲該值,再執行后面的命令。

下面的腳本提示輸入1到4,與每一種模式進行匹配:
  • echo 'Input a number between 1 to 4'
  • echo 'Your number is:\c'
  • read aNum
  • case $aNum in
  • 1) echo 'You select 1'
  • ;;
  • 2) echo 'You select 2'
  • ;;
  • 3) echo 'You select 3'
  • ;;
  • 4) echo 'You select 4'
  • ;;
  • *) echo 'You do not select a number between 1 to 4'
  • ;;
  • esac
  • 輸入不同的內容,會有不同的結果,例如: Input a number between 1 to 4 Your number is:3 You select 3
    再舉一個例子:
  • #!/bin/bash
  • option="${1}"
  • case ${option} in
  • -f) FILE="${2}"
  • echo "File name is $FILE"
  • ;;
  • -d) DIR="${2}"
  • echo "Dir name is $DIR"
  • ;;
  • *)
  • echo "`basename ${0}`:usage: [-f file] | [-d directory]"
  • exit 1 # Command to come out of the program with status 1
  • ;;
  • esac
  • 運行結果: $./test.sh test.sh: usage: [ -f filename ] | [ -d directory ] $ ./test.sh -f index.htm $ vi test.sh $ ./test.sh -f index.htm File name is index.htm $ ./test.sh -d unix Dir name is unix $

    總結

    以上是生活随笔為你收集整理的Shell case esac语句的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。