linux中變量$#,$@,$0,$1,$2,$*,$$,$?的含義

$# 是傳給腳本的參數個數
$@ 是傳給腳本的所有參數的列表
$0 是腳本本身的名字
$1 是傳遞給該shell腳本的第一個參數
$2 是傳遞給該shell腳本的第二個參數
$$ 是腳本運行的當前進程ID號
$* 是以一個單字符串顯示所有向腳本傳遞的參數,與位置變量不同,參數可超過9
$? 是顯示最後命令的退出狀態,0表示沒有錯誤,其他表示有錯誤


例子一

複製代碼
##dels.sh
echo
"number:$#" echo "scname:$0" echo "first :$1" echo "second:$2" echo "argume:$@" echo "show parm list:$*" echo "show process id:$$" echo "show precomm stat: $?"
複製代碼

執行結果

1
2
3
4
5
6
7
8
9
[@jihite]$ sh del.sh 1 2 3
number:3
scname:del.sh
first: 1
second:2
argume:1 2 3
show parm list:1 2 3
show process id:21057
show precomm stat: 0
區別:$@,$*
對於實例中的三個參數輸入而言,$@:表示爲“1 2 3”,對於$*:表示爲“1” “2” “3”。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章