在Linux Shell脚本中,$#用来表示传入的参数数量。例如:
#!/bin/bash
# test $#
echo "The number of parametes is $#."$ ./test0
The number of parametes is 0.
$ ./test0 1 2 3
The number of parametes is 3.
$ ./test0 a bc
The number of parametes is 2.在Linux Shell脚本中,$#用来表示传入的参数列表。例如:
#!/bin/bash
# test $@
echo "The parametes are $@."$ ./test1
The parametes are .
$ ./test1 1 2 3
The parametes are 1 2 3.
$ ./test1 a bc
The parametes are a bc.$@for var in $@
do
echo "$var"
done在Linux Shell脚本中,$0用来表示要执行的shell脚本名称。$1,$2用来表示传入到脚本中对应位置的参数,例如:
#!/bin/bash
# test $0,$1
echo "The shell is $0."
echo "The first parameter is $1."
echo "The first parameter is $2."$ ./test2
The shell is ./test2.
The first parameter is .
The first parameter is .
$ ./test2 1 2
The shell is ./test2.
The first parameter is 1.
The first parameter is 2.
$ ./test2 a 2
The shell is ./test2.
The first parameter is a.
The first parameter is 2.
$ ./test2 a b
The shell is ./test2.
The first parameter is a.
The first parameter is b.
$ ./test2 a b c
The shell is ./test2.
The first parameter is a.
The first parameter is b.