shell特殊变量 位置变量
1、$0 获得当前脚本的文件名,包括路径。
1
2
3
4
5
6
7
8
9
10
|
#写一个测试脚本
vim
test
.sh
#内容如下
dirname
$0
basename
$0
#执行一下
bash
$(
pwd
)
/test
.sh
#输出如下
/home/jane
test
.sh
|
2、$n 获取当前执行脚本的第n个参数,n=1..9,$0,为当前脚本名。如果n大于9,使用${10}
1
2
3
4
5
6
7
|
echo
'echo '
$(
seq
-s
" $"
1 5|
sed
's/1/$1/'
) > test_n.sh
cat
test_n.sh
#内容如下
#echo $1 $2 $3 $4 $5
bash
test_n.sh arg1 agr2 arg3
#输出内容:
#arg1 agr2 arg3
|
3、$* 获取脚本所有参数
1
2
3
4
5
6
7
|
echo
'echo $*'
>test_*.sh
cat
test_*.sh
#内容如下:
#echo $*
bash
test_*.sh 1 2 3
#输出:
#1 2 3
|
4、$# 获得脚本所有参数的个数
1
2
3
4
5
6
7
|
echo
'echo $#'
>test_j.sh
cat
test_j.sh
#内容如下:
#echo $#
bash
test_j.sh 1 2 3
#输出:
#3
|
5、$@ 暂不介绍。
本文转自shayang8851CTO博客,原文链接:
http://blog.51cto.com/janephp/1295346
,如需转载请自行联系原作者