POSIX 中的间接变量扩展就像在 bash 中所做的那样?

Das*_*hed 11 shell shell-script posix

是否有可能,或者是否有一些优雅的技巧可以像在 Bash 中那样在 POSIX 中进行间接变量扩展?

对于上下文,我正在尝试执行以下操作:

for key in ${!map_*}
do
    # do something
done
Run Code Online (Sandbox Code Playgroud)

编辑:为了澄清,我想访问以map_.

Zaa*_*Hai 6

黑客是使用eval

aaa=1
aab=2
aac=3

eval_like() {
    pattern=$1
    vars=`set |grep "^$pattern.*=" | cut -f 1 -d '='`
    for v in $vars; do
        eval vval="\$$v"
        echo $vval
    done
}   

for i in `eval_like aa`; do
    echo $i
done
Run Code Online (Sandbox Code Playgroud)