shell 中的$0 $1 $* $@ $# $$ $? $() $(())

$0: 脚本本身文件名称
$1: 命令行第一个参数,$2为第二个,以此类推
$*: 所有参数列表
$@: 所有参数列表
$#: 参数个数
$$: 脚本运行时的PID
$?: 脚本退出码

∗与@的区别

当命令行为test.sh 1 2 3
"$*“表示"1 2 3"$@“表示"1” “2” “3”
二者没有被引号括起来时是一样的都为"1 2 3",只有当被引号括起来后才表现出差异

 

$()  等同于: ··(反引号):运行一段命令
$(()) 进行数字运算 

# a=3;b=2;c=5
# echo $((a+b*c))

 

posted @ 2019-01-11 11:06  开始认识  阅读(26202)  评论(0编辑  收藏  举报