我有以下内容:
#!/bin/sh
n=('fred' 'bob')
f='n'
echo ${${f}[@]}
我需要在替换后执行底线
echo ${n[@]}
有办法做到这一点吗?我刚刚得到
test.sh: line 8: ${${f}}: bad substitution
在我这边。
您可以像这样使用数组进行变量间接寻址:
subst="$f[@]"
echo "${!subst}"
正如 Soulmerge 所指出的,你不应该使用#!/bin/sh
为了这。我用#!/usr/bin/env bash
作为我的 shebang,无论 Bash 在你的路径中的哪个位置,它都应该起作用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)