Nei*_*eil 5 bash variable-substitution arguments
如果我要求 bash 回显第 -1 个参数,它会打印 hb1:
echo $-1
hb1
Run Code Online (Sandbox Code Playgroud)
为什么?它在访问什么?
jes*_*e_b 20
您不是要求它打印第一个参数,即:$1
。
您要求的是一个特殊参数:
-
(
$-
, 连字符。) 扩展为调用时指定的当前选项标志,由 set 内置命令或由 shell 本身设置的那些标志(例如 -i 选项)。
所以你的选择是: hb
然后您会看到1
您添加的内容随后被打印出来(因此hb1
)。
如果您想获得最后一个参数(不确定这是否是您所说的 -1 参数),您可以使用以下形式的Shell Parameter Expansion:
$ set -- one two three
$ echo "${@: -1}"
three
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1107 次 |
最近记录: |