Shell-01-變數
阿新 • • 發佈:2021-08-05
變數
系統常用變數
#!/bin/bash echo "預設shell: $SHELL" echo "當前使用者家目錄: $HOME" echo "內部欄位分隔符: $IFS" echo "預設語言: $LANG" echo "預設可執行程式路徑: $PATH" echo "當前目錄: $PWD" echo "當前使用者ID: $UID" echo "當前使用者: $USER" echo "歷史命令大小: $HISTSIZE" echo "隨機生成一個0-32767的整數: $RANDOM" echo "主機名稱: $HOSTNAME" #擴充套件知識 #修改歷史命令記錄條數大小 vim /etc/profile HISTSIZE=10000 source /etc/profile
普通變數和臨時環境變數
#變數等號兩邊不建議空格,不然會出問題
#普通變數定義 VAR=value
#臨時環境變數定義 export VAR=value
#區別
#在當前shell程序中定義的環境變數,其作用域是當前的shell程序
#當用 export 命令匯入到系統環境變數時,則作用域是shell程序以及shell的子程序
不使用export
定義變數
使用export
定義變數
注意:在執行指令碼的時候,會在當前終端會生成一個子shell去執行指令碼的命令,而不會直接去執行系統命令
位置變數
位置變數是指的shell指令碼或者函式後面跟的 $n 變數 $n 取值範圍 $1 $2 $3 ... $9, 從第10個開始需要使用花括號呼叫 ${10}
shift 命令
執行一次shift命令,位置變數個數就會減一,而變數值會提前一位
也可以理解丟棄當前位置的變數
shift n 可移動n位
特殊變數
$0 指令碼自身名字
$? 上一條命令返回的狀態碼,0為成功,非0則執行失敗
$# 位置引數總數
$* 所有的位置引數被看做成一個字串
$@ 所有的位置引數被看做成獨立的字串
$$ 當前程序PID
$! 上一條後臺執行的程序的PID
變數的引用
= 變數賦值
+= 兩個變數相加(相當於字串拼接)
在Shell中所有的變數預設都是字串型
單引號、雙引號、反撇號
`......` 反撇號等效於 $(......),相當於先執行命令,在把命令返回結果賦值
單引號和雙引號之間的差別
單引號會忽略特殊字元
雙引號會解釋特殊字元原有的意義 如 $ 、! 等
轉載請註明出處喲~ https://www.cnblogs.com/lichengguo