在Linux系詳解Linux bash中的變量

 

 

(大講臺:國內首個it在線教育混合式自適應學習)shell

 

統中進行平常運維或者是編寫腳本時,變量是再熟悉不過的了,但這些變量都有哪些類型,具體的用法又有哪些差別呢?本文整理分享給你們:bash

   1、bash變量類型:運維

   本地變量學習

   局部變量命令行

   環境變量blog

   位置變量進程

   特殊變量(內置)作用域

   2、本地變量:it

   varname=value:做用域爲整個bash進程能夠使用;test

   變量命名規範:

   1. 只能含字母、數字和下劃線,而且以字母和下劃線開頭

   2. 最好不要跟系統已有的環境變量重名

   3. 見名知意

   3、局部變量:

   local varname=value:做用域爲當前代碼段;

   4、環境變量:

   做用域爲當前shell進程及其子進程,不能影響到其父進程;

   export varname=value 「導出」,若是變量已經定義能夠只是用變量名 export varname,即

   1. export varname=value

   2. varname=value

   export varname

   腳本在執行命令時會啓動一個子shell環境變量:

   系統自動執行的腳本(非命令行啓動)就須要自我定義須要的個環境變量;

   5、位置變量:

   $1,$2,$3,……

   cat first.sh test.txt hello

   $1: first.sh

   $2: test.txt

   $3: hello

   shift:踢掉參數

   shift n:踢掉n個參數,默認踢掉一個參數

   6、特殊變量:

   $?:上一個命令執行狀態的返回值:

   程序執行可能有兩種返回值:

   1. 程序執行結果

   2. 程序狀態返回嗎(0-255)

   0 則爲執行正確

   1-255 則執行出錯(1,2,127系統預留);

   $#:獲取當前shell命令行中參數的總個數

   $*:獲取當前shell的全部參數 「$1 $2 $3 …,受IFS控制

   $@:這個程序的全部參數 「$1″ 「$2″ 「$3″ 「…」,不受IFS控制

   $0 獲取當前執行的shell腳本的文件名

   $n 獲取當前執行的shell腳本的第n個參數值,n=1..9

   $$ 獲取當前shell的進程號(PID)

   $! 執行上一個指令的PID

相關文章
相關標籤/搜索