![通过 shell 脚本中的变量获取命令行参数](https://linux22.com/image/82241/%E9%80%9A%E8%BF%87%20shell%20%E8%84%9A%E6%9C%AC%E4%B8%AD%E7%9A%84%E5%8F%98%E9%87%8F%E8%8E%B7%E5%8F%96%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%82%E6%95%B0.png)
我想从一个 var 中获取命令的 arg,该 var 中包含我想要的 arg 的索引。像这样的东西
# command in terminal, `foo -r -f value_wanted`
index="3"
var=$"$index"
echo $var ## expected output `value_wanted`
我知道我可以直接调用它,$3
但是我的索引在变量中。
答案1
您可以通过使用以下符号来实现:
echo "${!index}"
不过,如果您想处理位置参数,我建议使用getopt
(not getopts
)。