linux中shell變量$#,$@,$0,$1,$2的含義解釋(jieshi):
變量說明(shuoming):
$$
Shell本身(benshen)的PID(ProcessID)
$!
Shell最后(zuihou)運(yùn) 行(running)的后臺(tái)Process的PID
$?
最后(zuihou)運(yùn) 行(running)的命令的結(jié)束(jieshu)代碼(返回(fanhui)值)
$-
使用(shiyong)Set命令設(shè)定的Flag一覽
$*
所有(suoyou)參數(shù)列表。如"$*"用「"」括起來的情況(qingkuang)、以"$1 $2 … $n"的形式(xingshi)輸出(shuchu)所有(suoyou)參數(shù)。
$@
所有(suoyou)參數(shù)列表。如"$@"用「"」括起來的情況(qingkuang)、以"$1" "$2" … "$n" 的形式(xingshi)輸出(shuchu)所有(suoyou)參數(shù)。
$#
添加(tianjia)到Shell的參數(shù)個(gè)數(shù)
$0
Shell本身(benshen)的文件名
$1~$n
添加(tianjia)到Shell的各參數(shù)值。$1是第1參數(shù)、$2是第2參數(shù)…。
示例:
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
結(jié)果(jieguo):
[Aric@localhost ~]$ bash params.sh 123456 QQ
The complete list is 24249
The complete list is
The complete list is 0
The complete list is 123456 QQ
The complete list is 123456
The complete list is QQ
The complete list is 2
The complete list is params.sh
The complete list is 123456
The complete list is QQ