1. 程式人生 > 其它 >shell程式設計中的變數和符號

shell程式設計中的變數和符號

一、變數

1、自定義變數

  名稱可以用數字、字母、下劃線,不能以數字開頭,等號兩邊不能有空格,不能使用特殊符號

# 定義變數 或者 賦值
a=10 
#取消變數的定義
unset a 
 #呼叫變數時用$加變數名
echo $a
#容易與後面內容發生混淆時用大括號
echo ${a}RMB 

2、環境變數

  由系統提前定義好,使用時直接呼叫

  USER 當前使用者名稱
  HOME 當前使用者的家目錄
  SHELL 當前使用者的直譯器
  UID 當前使用者的id號
  HOSTNAME 主機名
  PWD 當前位置
  PATH 儲存命令的路徑

3、位置變數與預定義變數

  $1 執行指令碼時後面跟的第1個位置引數
  $2 執行指令碼時後面跟的第2個位置引數
  $3 執行指令碼時後面跟的第3個位置引數
  $* 執行指令碼時後面跟的所有位置引數
  $# 執行指令碼時後面跟的位置引數的個數
  $$Shell本身的PID(ProcessID,即指令碼執行的當前程序ID號)
  $? 判斷上一條指令是否執行成功,0代表成功,非0代表失敗

如何檢視?

#檢視所有環境變數
env 
#配合grep搜尋
env | grep HOSTNAME 
#檢視所有變數
set 
#自定義變數
abcd=8888 
#查詢
set | grep abcd 

二、符號

1、雙引號 " "

  作用:將某些物件變成字串輸出

    a.當字串當中存在空格的時候,必須使用雙引號,如果沒有空格可以不用

str=hello
str="hello world"

    b.當雙引號中要對變數進行引用

echo "$str world"

    c.在雙引號當中呼叫shell命令,當shell命令需要識別的時候,使用反引號包裹命令

echo
"`ls -l`"

2、單引號 ' '

  作用:把包裹的內容當成字串使用

  請注意以下兩條命令執行結果的區別

3、反引號 ··

  作用:將雙引號中的命令識別,然後執行命令對應的內容

4、重定向符號 >> >

  > 重定向到某一個檔案,完成覆蓋

  >> 重定向到某一個檔案,完成追加