Concat numéros de JSON sans doublequotes à l'aide de jq
j'ai des fichiers avec 1 document json par ligne et les champs start_id
et end_id
dans chaque document. J'aimerais utiliser jq pour les extraire et les imprimer sur la même ligne.
pour l'instant, j'ai:
cat part* | jq '"(.start_id) (.end_id)"' | sed s/"//g | head
ça marche, mais j'ai besoin du sed
pour enlever les doubles citations.
afin d'améliorer mon jq-foo, y a-t-il un moyen de faire ce sans utiliser sed ?
p.ex. donnée
{"start_id":1,"end_id":50}
{"start_id":50,"end_id":99}
{"start_id":99,"end_id":12}
get
1 50
50 99
99 12
au lieu de
"1 50"
"50 99"
"99 12"
11
demandé sur
Bonifacio2
2015-11-27 01:01:32
1 réponses
par défaut, jq
formate sa sortie pour être une valeur JSON valide. Cela signifie que les chaînes de caractères sont enveloppées dans des guillemets.
heureusement, le paramètre --raw-output
ou -r
l'emporte sur ce comportement de sorte que votre chaîne de caractères puisse être libre de ces guillemets désagréables;)
18
répondu
xjedam
2018-09-26 13:25:48