É possível ou existe algum truque elegante para fazer a expansão variável indireta no POSIX, como pode ser feito no Bash?
Por contexto, estou tentando fazer o seguinte:
for key in ${!map_*}
do
# do something
done
Edição: Para esclarecer, eu gostaria de acessar variáveis de shell que começam com map_
.
shell
shell-script
posix
Tracejadas
fonte
fonte
map_*
).sh
VSbash
- consulte stackoverflow.com/a/5725402/1172302 .Respostas:
O truque é usar
eval
:fonte
set
era o que eu estava procurando.QUERYSTRING=$'\nmap_$(reboot)=x'
). Lembre-se também de que obash
shell inclua a lista de funções na saída deset
(quando não estiver sendo executado comosh
).