shell 特殊变量详解

$0 获取当前执行脚本的名称,包括路径

[root@centos test]# cat test.sh
echo $0 

[root@VM_102_244_centos test]# bash test.sh
test.sh

#包括路径
[root@VM_102_244_centos ~]# bash ~/test/test.sh 
/root/test/test.sh

$n 获取当前执行的shell脚本的第N个参数,n=1..9,当n为0时表示脚本的文件名,如果n大于9,用大括号括起来 $


[root@VM_102_244_centos test]# cat test.sh
echo $1 $3 ${10} 

[root@VM_102_244_centos test]# bash test.sh a b c d e f g h e i g k
a c i



$#:传递到脚本的参数数量;
$*和$@:传递到脚本的所有参数;
$?:推出状态;0表示无错误;1表示有错误;
$$:脚本运行的进程号,即当前shell的进程号;

posted @ 2017-03-03 06:28  Echo/  阅读(573)  评论(0编辑  收藏  举报