shell中常见符号的意义:https://blog.csdn.net/daocaokafei/article/details/120050007
-
传递参数给shell脚本
sh test.sh zhang 20 那test.sh里面咋接受参数呢? # #!/usr/bin/env sh name=$1 age=$2 echo "name is ${name} & age is ${age}" 输出:name is yaochun & age is 20 $# 获取参数的个数 $* 获取全部参数 $@ 获取全部参数 $1或者${1} 获取第1个参数,其它数字同理。
-
指定变量的默认值
https://zhuanlan.zhihu.com/p/448938765
${paramter-word} 会被替换成变量 parameter 的值,如果 parameter 不存在,则被替换成 word。所以
${@-'-i'} 就会被替换成脚本的输入参数 ,但是如果脚本没有输入参数,则替换成 -i
${@:-1} 如果$@未设置或为空,则用1替换 -
Shell $*和$@的区别
http://c.biancheng.net/view/807.html -
shift关键字
导致参数($x)个数和下标位移,通常用来遍历命令的参数。
https://blog.csdn.net/qq_42230338/article/details/117398080
0 条评论