In zsh möchte ich ein assoziatives Array durchlaufen. Ich brauche sowohl Schlüssel als auch Werte. Wenn ich aber normal ( for x in $assoc_array
) über das assoziative Array iteriere , erhalte ich nur Werte.
Alle Beispiele, die ich mir angesehen habe, zeigen, dass Sie bei einem gegebenen Schlüssel seinen Wert aus einem assoziativen Array erhalten können. Mein Problem ist, dass ich zuerst den Schlüsselsatz bekomme.
Unterstützt zsh das Iterieren über Schlüssel in einem assoziativen Array?
for i in a,b c_s,d ; do KEY=${i%,*}; VAL=${i#*,}; echo $KEY" XX "$VAL; done
Antworten:
Mit dieser raffinierten Parametererweiterung können Sie sowohl Schlüssel als auch Werte gleichzeitig abrufen:
Siehe Parametererweiterungsflags im Zsh-Handbuch.
quelle
Nachdem ich meine Frage gestellt hatte, suchte ich weiter und fand diese Antwort in Unix StackExchange:
Ausgabe ist:
quelle
$options
. (Sieheman zshoptions
)