Ist es möglich oder gibt es einen eleganten Hack, um eine indirekte Variablenerweiterung in POSIX durchzuführen, wie dies in Bash möglich ist?
Für den Kontext versuche ich Folgendes zu tun:
for key in ${!map_*}
do
# do something
done
EDIT: Zur Verdeutlichung möchte ich zunächst auf Shell-Variablen zugreifen map_
.
shell
shell-script
posix
Gestrichelt
quelle
quelle
map_*
) übereinstimmen .sh
VSbash
- siehe stackoverflow.com/a/5725402/1172302 .Antworten:
Der Hack ist zu verwenden
eval
:quelle
set
war das, wonach ich gesucht habe.QUERYSTRING=$'\nmap_$(reboot)=x'
). Beachten Sie auch, dass diebash
Shell die Liste der Funktionen in der Ausgabe von enthältset
(wenn sie nicht als ausgeführt wirdsh
).