shell程式設計-bash shell中的特殊變數
1.介紹
shell有很多以$開頭的特殊變數,以下是對於這些變數的說明:
變數 | 意義 |
---|---|
$$ | Shell本身的PID(ProcessID) |
$! | Shell最後執行的後臺Process的PID |
$? | 最後執行的命令的結束程式碼(返回值) |
$- | 使用Set命令設定的Flag一覽 |
$* |
所有引數列表。如" |
$@ |
所有引數列表。如" |
$# | 新增到Shell的引數個數 |
$0 | Shell本身的檔名 |
|
新增到Shell的各引數值。 |
2.例子
下面通過一個例子解釋怎麼使用這些特殊變數
命令一個variable.sh的簡單指令碼,其內容如下
#!/bin/bash echo "number:$#" # $# 是傳給指令碼的引數個數 echo "scname:$0" # $0 是指令碼本身的名字 echo "first :$1" # $1是傳遞給該shell指令碼的第一個引數 echo "second:$2" # $2是傳遞給該shell指令碼的第二個引數 echo "argume:$@" # $@ 是傳給指令碼的所有引數的列表 echo "all argume:$*" # $* 所有引數列表 echo "finish code:$?" # $? 最後執行命令的結束程式碼
執行該指令碼並傳入aa和bb兩個引數
bash variable.sh aa bb
得到如下結果
number:2 scname:variable.sh first :aa second:bb argume:aa bb finish code:0