如何n
在Bash中获得th位置参数,变量在哪里n
?
Answers:
如果N
保存在变量中,请使用
eval echo \${$N}
如果经常使用
echo ${12}
以来
echo $12
不一样!
${12}
和之间有什么区别$12
?
$12
意思是$1
和字符2
。${12}
表示第12个参数。
正如在Bash by Example中看到的那样,您只需要使用自动变量$ 1,$ 2等。
$#用于获取参数数。
${!n}
记录下来是我不知道的答案。
@
(和*
)是“特殊参数”,并且因为它们不是有效的数组名称?${@}
确实引用了带编号的参数,但@
不是数组,并且未实现支持来解析它,例如,“${unsetvariable}
”将产生空输出,因为它是有效的数组/变量名称,只是尚未设置(这些异常是我猜是在bash的源代码中专门处理的)。我试图在中找到一个更好的原因man bash
,但是扫描@会使我失去耐心。; P