Hauptmenü

jq und geschweifte Klammern

Begonnen von Frank Niethardt, 23.08.2024 10:44:50

⏪ vorheriges - nächstes ⏩

Frank Niethardt

Hallo,

wenn man einen Variable über jq filtert, um dort beispielsweise alle ID / Value Paare aus einer Checkliste zu bekommen, dann kann man das in jqplay einfach über folgendes erreichen.
[.[] | recurse(.sub[]) | {id, value}]
Versucht man das ganze dann nach KIX zu übersetzen, scheitert die entsprechende Notation daran, dass die schließende Klammer als Variablenausdruck interpretiert wird.
${_Checklist|jq([.[] :: recurse(.sub[]) :: {id, value}])}
Kann man das irgendwie umgehen? 

Viele Grüße
Frank

Frank Niethardt

#1
Wie es immer so ist, Ewigkeiten gesucht, aber kaum dass man die Frage gestellt hat, findet man dann auch die Lösung. Zwar nicht generell, aber für meinen Anwendungsfall.

[.[] | recurse(.sub[]) | pick(.id, .value)]
bzw.

${_Checklist|jq([.[] :: recurse(.sub[]) :: pick(.id, .value)])}