zu speichern Hallo, ich habe ein Problem mit Shell und jq.Verwenden von jq, um einen Teil von JSON in Variable
Ich habe Datei, sagen wir Text.txt und es enthält nur JSON, sagen wir {"Zeilen": [{"Beispiel": "20"}]}. Ich muss ein Skript in der Shell schreiben, das diese Textdatei als erstes Argument liest und den Wert von "example" aus diesem JSON in der Variablen mit jq speichert.
das ist, was ich bisher, aber es druckt nur eine leere Zeile aus:
file=$(readlink -f "$1")
variable="$file" | jq -j ".rows[].example"
echo "$variable"
für mich interessant ist, dass dieser Code Arbeit, dass es druckt richtig
file=$(readlink -f "$1")
cat "$file" | jq -j ".rows[].example"
Bedeutung 20.
Weiß jemand, was mache ich falsch? Thx Jungs
' "$ file" | jq -j ".rows []. Beispiel" 'ist nicht dasselbe wie' cat "$ file" | jq -j ".rows []. Beispiel" '... warum würdest du noch etwas anderes erwarten? –
@Fredegar - Was ist, wenn das Array mehr als ein Element enthält? – peak