linux中shell變量$#,$@,$*,$?,$0,$1,$2的含義解釋
變量說明:
$$
Shell本身的PID(ProcessID)
$!
Shell最後運行的後台Process的PID
$?
最後運行的命令的結束代碼(返回值)
$-
使用Set命令設定的Flag一覽
$*
所有參數列表。如"$*"用「"」括起來的情況、以"$1 $2 … $n"的形式輸出所有參數。
$@
所有參數列表。如"$@"用「"」括起來的情況、以"$1" "$2" … "$n" 的形式輸出所有參數。
$#
添加到Shell的參數個數
$0
Shell本身的文件名
$1~$n
添加到Shell的各參數值。$1是第1參數、$2是第2參數…。
示例:
1 #!/bin/bash
2 #
3 printf"The complete list is %s\n""$$"
4 printf"The complete list is %s\n""$!"
5 printf"The complete list is %s\n""$?"
6 printf"The complete list is %s\n""$*"
7 printf"The complete list is %s\n""$@"
8 printf"The complete list is %s\n""$#"
9 printf"The complete list is %s\n""$0"
10 printf "The complete list is %s\n" "$1"
11 printf "The complete list is %s\n" "$2
結果:
[Aric@localhost ~]$ bashparams.sh 123456 QQ
The complete listis24249
The complete listis
The complete listis0
The complete listis123456 QQ
The complete listis123456
The complete listisQQ
The complete listis2
The complete listisparams.sh
The complete listis123456
The complete listisQQ
Have a nice day!!!