變數根據作用域可以劃分為三種:
除了上述三種,還有位置引數變數和特殊變數:
name=wrz
echo $name
set於unset
檢視變數
set | grep "^name"
取消變數
unset name
為什麼說是本地變數?
舉例說明
檢視一下程序id變化
我們原本在pid為2035的shell(bash程序)中,在當前shell設定了變數name並且可獲取其值,隨後使用bash命令進入了子shell(pid為2148的bash程序)中再獲取這個變數,就獲取不到了。
如果我們使用exit命令退回剛才的父shell,就又可以獲取到該值。
結論本地變數的生命週期,從建立的時候開始,直到所在的bash程序結束(比如使用exit)或者變數被unset。
export age=22
不論在哪個bash程序 都可以獲取到的
; 分號,命令按順序執行,執行完第乙個再執行第二個,後乙個命令的執行與否與前乙個命令的執行成功與否無關。
&& 邏輯與,只有當command1執行成功的時候,才執行command2。
|| 邏輯或,只有當command1執行失敗的時候,才執行command2。
let arg [arg ...]
[root@docker135 ~]# num1=22
[root@docker135 ~]# num2=33
[root@docker135 ~]# let sum=$num1+$num2
[root@docker135 ~]# echo $sum
55[root@docker135 ~]#
$(( arithmetic expression ))
[root@docker135 ~]# sum1=$(($num1+$num2))
[root@docker135 ~]# echo $sum1
55[root@docker135 ~]#
[root@docker135 ~]# sum3=$(expr $num1 + $num2)
[root@docker135 ~]# echo $sum3
55[root@docker135 ~]#
通常使用第二種來運算
Shell程式設計《一》
第乙個shell指令碼 公司專案中大量使用了shell指令碼,索性就深入學習一下吧。建立乙個shell.sh檔案,並賦予其可執行許可權 touch shell.sh chmod x shell.sh寫一句簡單的輸出,並執行 var nihao echo var echo 執行 shell.sh,注意...
Shell程式設計(一)
前言 我的簡歷中寫到熟悉linux常用命令,能進行shell程式設計,因此學習shell程式設計是必須的了。shell是使用者與linux作業系統核心互動的介面程式,也是乙個命令語言直譯器 將使用者輸入的命令解釋給linux核心。shell有很多種類,常見的有bourne shell usr bin...
shell程式設計基礎(一)
一 命令列 命令列結構 命令名 命令選項和命令引數三部分內容組成,中間以空格或製表符等空白字元分隔。如下 命令名 命令選項 命令引數 command option parameter 命令選項通常以減號 開始的單個字元,主要用於限定命令的具體功能,同時也決定命令的最終執行結果 選項可以單獨給出,也可...