1. 程式人生 > 實用技巧 >shell變數

shell變數

shell變數

1、變數分類:
1、臨時變數----程式內定義的
2、永久變數---環境變數
2、使用者定義變數:由字母或下劃線開頭,由字母、下劃線和數字組成
使用變數:變數名加上字首$
變數賦值:=(等於號兩邊沒有空格)
time=`date`
echo $time
total=$(df -h)
echo $total
3、列出所有變數:set
4、變數賦值時單引號和雙引號的區別:
單引號之間的內容原封不動賦給變數
雙引號取消了空格的作用,特殊符號的含義保留,雙引號之間可以用$引用其他變數
5、刪除變數:
unset 變數名

位置變數和特殊變數

1、位置變數:
shell解釋執行使用者的命令時,將命令的第一個字作為命令名,其它字作為引數。由出現在命令列上的位置確定的引數成為位置引數
如何呼叫??
位置變數用 $n 來表示
./test.sh name1 name2 name3
$0 這個程式的檔名 test.sh
$1 程式的第一個引數 name1
2、特殊變數
$* 這個程式的所有引數
$# 這個程式的引數個數
$$ 這個程式的PID
$! 執行上一個後臺程式的PID
$? 執行上一個指令的返回值

read命令

read a b c ----讀取鍵盤輸入
echo $a $b $c

expr命令

----對整數型變數進行算數運算
----運算子之間要有空格
expr 3 + 5
----關於加減乘除
+ - \* /

判斷符號

1
-eq 等於

-ge 大於等於

-gt 大於

-le 小於等於

-lt 小於

-ne 不等於

2、變數測試
test int1 -eq int2 相當於 [int1 -eq int2]
3、檔案測試
test -d file #是否為目錄
test -f file #是否為檔案
test -x file #是否可執行
其他: -r -w 可讀可寫
-e 是否存在
-s 是否為空
簡寫 [-x file]