Ich mag json Dateien filtern jq mit:Wie filtert man Array von Objekten anhand von Elementeigenschaftswerten mit jq?
jq . some.json
die json Da eine Reihe von Objekten:
{
"theList": [
{
"id": 1,
"name": "Horst"
},
{
"id": 2,
"name": "Fritz"
},
{
"id": 3,
"name": "Walter"
},
{
"id": 4,
"name": "Gerhart"
},
{
"id": 5,
"name": "Harmut"
}
]
}
Ich möchte, dass die Liste filtern, um nur die Elemente zu zeigen, mit der ID mit dem Wert 2 und 4, so ist die erwartete Ausgabe:
{
"id": 2,
"name": "Fritz"
},
{
"id": 4,
"name": "Gerhart"
}
Wie filtere ich die Json mit jq? Ich habe mit ausgewählter und Karte rumgespielt, aber nicht irgendwelche von denen an der Arbeit, zum Beispiel:
$ jq '.theList[] | select(.id == 2) or select(.id == 4)' array.json
true
** Jeder bitte beachten Sie: ** Die Frage ist über [jq] (http://stedolan.github.io/jq/#), nicht jQuery. –
@ T.J.Crowder YMMD ^^ Und ich klärte in der Frage: D – k0pernikus