SHELLING

1、變量

變量分爲環境變量、自定義變量。
環境變量=全局變量
自定義變量=局部變量

env用於顯示用戶環境區中的變量及其取值,即環境變量;

set用於顯示本地數據區和用戶環境區中的變量及其取值;

unset用於刪除指定變量當前的取值,該值將被指定爲NULL;

export命令用於將本地數據區中的變量轉移到用戶環境區,即將自定義變量轉換爲環境變量。


2、變量參數

$# 傳遞到腳本的參數個數

$* 所有位置參數的內容


3、IF語句

[ -f "$file" ] 判斷$file是否是一個文件

[ $a -lt 3 ] 判斷$a的值是否小於3,同樣-gt和-le分別表示大於或小於等於

[ -x "$file" ] 判斷$file是否存在且有可執行權限,同樣-r測試文件可讀性


4、READ

read -p "Enter your name : " name

echo $name


echo "Enter your name : "

read -a name

echo $name


5、變量規則

  1. 變量與變量內容以一個等號『=』來連結,如下所示: 
    『myname=VBird』

  2. 等號兩邊不能直接接空格符,如下所示爲錯誤: 
    『myname = VBird』或『myname=VBird Tsai』

  3. 變量名稱只能是英文字母與數字,但是開頭字符不能是數字,如下爲錯誤: 
    『2myname=VBird』

  4. 變量內容若有空格符可使用雙引號『"』或單引號『'』將變量內容結合起來,但
    • 雙引號內的特殊字符如 $ 等,可以保有原本的特性,如下所示:
      『var="lang is $LANG"』則『echo $var』可得『lang is en_US』
    • 單引號內的特殊字符則僅爲一般字符 (純文本),如下所示:
      『var='lang is $LANG'』則『echo $var』可得『lang is $LANG』

  5. 可用跳脫字符『 \ 』將特殊符號(如 [Enter], $, \, 空格符, '等)變成一般字符;

  6. 在一串命令中,還需要藉由其他的命令提供的信息,可以使用反單引號『`命令`』或 『$(命令)』。特別注意,那個 ` 是鍵盤上方的數字鍵 1 左邊那個按鍵,而不是單引號! 例如想要取得核心版本的配置:
    『version=$(uname -r)』再『echo $version』可得『2.6.18-128.el5』

  7. 若該變量爲擴增變量內容時,則可用 "$變量名稱" 或 ${變量} 累加內容,如下所示:
    『PATH="$PATH":/home/bin』

  8. 若該變量需要在其他子程序運行,則需要以 export 來使變量變成環境變量
    『export PATH』

  9. 通常大寫字符爲系統默認變量,自行配置變量可以使用小寫字符,方便判斷 (純粹依照使用者興趣與嗜好) ;

  10. 取消變量的方法爲使用 unset :『unset 變量名稱』例如取消 myname 的配置:
    『unset myname』


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章