Excerpt from: Abs_guide
: http://www.tldp.org/LDP/abs/abs-guide.pdf
the meaning of shell variable $#,[email protected],$0,$1,$2 in Linux is explained: Variable Description: $$ the PID of the shell itself (ProcessID) $! PID of the Shell's last running background process $? end code of the last Run command (return value) $- flag at a glance using the SET command $* all parameter lists. such as "$*" in the Case of "" ", in the form of" $ $ ... $n "output all parameters. [email protected] all parameter lists. such as "[email protected]" with "" "in the case, with" $ "" $ "... All parameters are output in the form "$n". $# number of arguments added to the shell $ the name of the shell itself $1~ $n each parameter value added to the shell. $ $ is the 1th parameter, and the $ = is the 2nd parameter .... |
Example:
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" "[email protected]" 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 |
Results:
[[email protected] ~]$ 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
Linux shell variable $#,[email protected], $0,$1,$2 meaning explanation