shell特殊變數基礎知識

2021-08-26 02:40:39 字數 615 閱讀 4144

$0: 獲取當前指令碼的檔名,如果指令碼中包含路徑,就包括路徑

$n:獲取shell指令碼中第n個引數,n大於9時需要用{}括起來

$#:獲取當前shell指令碼後面的引數總個數

$*:獲取當前指令碼所有所傳引數,不加引號和$@相同,把所有引數視為乙個字符集,如果$*加上雙引號,則表示,每個引數為單個字元,相當於"$1,$2,$3"如果單個引數中有空格,此方法則吧它以空格的方式分為多個字符集,例如::所傳引數是"a b c d"和"ef" ,這是乙個引數,雙引號括起來表示是乙個引數,但是當使用"$*"的時候,會變成"a","b","c","d"和"ef",以空格分開.

$@:獲取當前指令碼所有所傳引數,不加引號和$*相同,把所有引數視為乙個字符集,如果$@加上雙引號,則表示,每個引數原模原樣的搬過來,例如:所傳引數是"a b c d"和"ef" ,這是乙個引數,雙引號括起來表示是乙個引數,當使用"$@"的時候,輸出為"a b c d" 和"ef",會保留空格,視為乙個字符集,本來就是乙個字符集.

$?:獲取上一條命令執行後的返回值(0為成功,非0為失敗)

$$:獲取當前shell指令碼的程序號(pid)

$!:獲取上乙個shell指令碼的程序號(pid)

$_:獲取再此之前的命令或指令碼的最後乙個引數.

shell基礎 shell特殊變數

一.變數列表 二.實驗 系統 centos 7 1.特殊變數 root day2 cat p.sh bin bash echo 0 0 echo echo echo echo 1 2 3 1 2 3 root day2 sh p.sh a b c d 0 p.sh a b c d a b c d 4...

《Shell 程式設計》02 Shell 變數基礎知識

標籤 空格分隔 shell 2.3 普通變數 1 變數定義 2 變數型別 普通變數 區域性變數 1 設定環境變數 export 變數名 value 變數名 value export 變數名 declare x 變數名 value2 讓環境變數永久生效的常用設定檔案 使用者的環境變數配置 root w...

SHELL 基礎知識

1 什麼是shell?shell的本意是 殼 的意思,其實已經很形象地說明了shell在linux系統中的作用。shell就是圍繞在linux核心之外的乙個 殼 程式,使用者在作業系統上完成的所有任務都是通過shell與linux系 統核心的互動來實現的。shell本身是乙個c語言編寫的程式,是使用...