shell中变量,获取脚本参数变量,变量长度,获取脚本执⾏路径
shell中不会区分变量的类型,分为环境变量和普通变量。
shell中⽐较重要的变量:
shell脚本返回执行结果$0 :获取当前shell脚本的⽂件名,如果执⾏包含了路径, 则包含路径,通过$0可以获取当前执⾏路径,dirname $0
$1 —$n : 获取当前Shell脚本执⾏时底n个参数值,$1,$2,…$9,如果n⼤于9,则⽤⼤括号括起来,如${12},接的参数⽤空格隔开$# :获取当前Shell脚本执⾏时,参数的总个数。
@相同,如果给
$*:获取当前Shell脚本所有传参的参数,不加引号和加上引号 “ $ ”,则表⽰将所有的参数都视为字符串,相当于“$1 $2 $3”
$@:获取当前Shell脚本所有传参的参数,不加引号和$*相同,加引号相当于将所有的参数视为独⽴的字符串,如:“$@” 相当于“$” ,”$1” , ”$2” , ”$3”这是将多参数传给其他程序的最好的⽅式。当$*和$@都加双引号时两者是有区别的,当不加时,两者是⽆区别的
$? :获取上⼀条命令的执⾏状态的返回值(0为成功,⾮零为失败)
$$:获取当前执⾏的Shell脚本的进程号
$!:获取上⼀个在后台⼯作的进程号
$_:获取在此之前执⾏的的命令或脚本的最后⼀个参数
变量⼦串,截取:
${param} : 返回变量$param的内容
${#param}:返回变量$param的长度
${param:offset}:从变量$param的offset开始提取⼦串到结尾处\
${param:offset:length}:从变量$param的offset开始提取长度为length的⼦串
${#param:-word}:如果变量为空或未赋值,那么返回备⽤的word
${#param:=word}:如果变量为空或为负值,返回备⽤的word并将param设置为word

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。