shell中變數中不定義變數型別。shell變數是否為了方便呼叫。
shell變數:環境變數(全域性變數),普通變數(區域性變數)
shell 不區分型別,使用的時候區分變數型別。
1、環境變數
全域性變數,顯示環境變數:
echo $變數;env;set
定義環境變數:
系統固有:ps1,path,home,uid
方法1
export oldboy=1;
方法2
oldboy=1
export oldboy
永久生效的方法:
新增至/etc/profile ; . /etc/profile
方法3
declare -x a=1
取消環境變數:unset 變數
環境變數的檔案:
全域性檔案
/etc/profile
/etc/bashrc
使用者環境變數檔案
~/.bashrc
~/.bash_profile
環境變數生效的的順序:
①~/.bash_profile
②~ /.bashrc
③/etc/bashrc
④/etc/profile
登入shell:
先載入/etc/profile ;~/.bash_profile,然後載入~/.bashrc ;再次載入/etc/bashrc(生效順序相反)
2、普通變數
區域性變數,當前使用者或者指令碼中生效。
①字串變數
②變數名:字母,數字,下劃線,不能以數字開頭。
變數名定義規則:見名知意。首字母,下劃線連線單詞。
③變數內容:字串,
單引號:所見即所得。
不用引號,雙引號:先解析變數或者命令,然後輸出。
雙引號可以把要定義的內容作為乙個整體。純數字不加引號。
命令變數:反引號,括號
變數名=`ls`
變數名=$(ls)
普通變數總結:
①在指令碼中定義普通字串變數,盡量把變數的內容使用雙引號。
②純數字的變數內容可以不加引號。
③希望變數的內容原樣輸出需要加單引號。
④希望變數值引用命令並獲取命令的結果就用反引號或者$()
⑤$db_t,若變數後面有其他字元連線的時候,就必須給變數加上大括號{},例如$db_t就要改成$_t。
⑥變數名的定義要有一定的命令規範,並且要見名知意。
⑦變數定義使用賦值符號(=),賦值符號兩端不要有空格。
Shell指令碼學習筆記 二 變數
變數與字串 bash shell沒有所謂的 資料形態 除非使用內建declare特別指定變數的型態。在bash shell中,只有一種資料型態 以字元組成的字串 不必經過事先宣告的程式想用就用 設定變數值之後,該變數值只在當前的shell環境中有效。變數名長度無限制,區分大小寫。設定變數的方法 變數...
學習Shell(二)變數
如何給shell指令碼傳入引數 1.執行 vi test.sh 建立乙個新的shell指令碼。vi test.sh 2.指令碼test.sh的內容如下 bin sh name 1 echo the are great man 3.給新建立的test.sh的指令碼賦可執行許可權,命令為 chmod 7...
C 學習系列之二 變數
1.什麼叫變數 變數是指在程式的執行過程中隨時可以發生變化的量。要使用變數,需要申明他們,所謂申明就是給變數指定型別和名稱。變數申明後就可以用它們做儲存單元,存放申明的資料型別的資料。變數名定義規則 變數名必須由字母 數字 下劃線組成不能與c 中關鍵字相同 格式 型別 變數名 例 string us...