一 . 單引號和雙引號
shell
1.單引號和雙引號二者之間的做用和區別:vim
單引號('') : 單引號中的全部字符均做爲普通字符處理 , 即原樣輸出 , 沒法調用變量的值 .bash
雙引號("") : 雙引號中會自動識別特殊字符 , 即調用變量的值 , 如$ ,\n換行符 , \t tab鍵等特殊字符 .jsp
實例說明: 賦值給變量 x 一個值 , 分別輸出 '$x' 和 "$x"ide
再舉個例子說明: 分別在命令行中輸入: echo -e '${x}_\n_welcome_to\t_51cto' 和 echo -e "${x}_\n_welcome_to\t_51cto"模塊化
說明 : echo 的 -e 選項是容許識別\n換行符 , \t tab鍵 , \r回車符等特殊字符 , ${x}一般等於$x , 那麼何時須要將變量名用{}括起來呢?
答 : 當變量名後面緊貼着其餘字符時 , 爲了不歧義 , 就須要將變量名用{}括起來函數
二 . shell的函數功能和定義spa
1. 函數功能 : 完成特定功能的代碼塊(段)命令行
在shell中定義函數能夠使用代碼模塊化 ,便於複用(重複使用)代碼 , 函數必須先定義才能夠使用blog
2. 函數的定義 :
方法一:
函數名(){
函數要實現的功能代碼
}
方法二:
function 函數名{
函數要實現的功能代碼
}
經過 function , network 服務控制腳本能夠看到其中內容 , 其中就有函數 , 好比cat -n /etc/rc.d/init.d/functions | more 查看:
經過介紹下面的 case 命令後 ,能夠舉例說明函數做用及用法 ...
三 . case 命令介紹
1. 功能定義 : 根據變量的取值不一樣 , 執行不一樣的操做命令
2. 語法格式 :
case $變量名 in
值一)
要實現功能的代碼 ;;
值二)
要實現功能的代碼 ;;
值三)
要實現功能的代碼 ;;
....
值n)
要實現功能的代碼 ;;
esac
實例: 編寫一個名稱爲/sh/install.sh 的腳本 , 要求顯示一個主菜單界面 , 提示用戶輸入選項 , 回車後確認執行指定選項的命令操做:
方法一 : vim /sh/install.sh 輸入如下內容 :
使用 bash /sh/install.sh運行腳本後 ,會顯示一個菜單 , 輸入對應的編號 , 即會出現相應的命令
方法二 : 使用函數定義 , 並調用函數
上圖中定一了一個名爲_NFS , 做用是檢測安裝nfs服務的函數 , 再在case命令值一中 , 調用_NFS函數 , wq出去後運行 , 輸入編號 1 , 便可安裝nfs服務
以上就是關於case命令和shell函數的使用 !!