2017-03-10 1 views
1

Existe-t-il un moyen de concaténer la commande de ces js en une seule commande jq?JQ | Commandes de concaténation

jq 'map({a: .children[1].text, f: .children[0].text})' | \ 
jq 'map(select(.a != null))' | \ 
jq 'map(select(.f != null))' | \ 
jq 'map([.a, [.f,(.f | length)]])' | \ 
jq -c '.[]' 

Merci beaucoup.

+0

Probablement. À quoi ressemble votre contribution, et à quoi devrait ressembler la sortie? En première approximation, il suffit de connecter les filtres eux-mêmes: 'jq -c 'map (...) | carte (...) | carte (...) | carte (...) | . [] ''. – chepner

+0

Cela a très bien fonctionné! Merci beaucoup. – Roger

Répondre

1

jq -c '.[] | {a: .children[1].text, f: .children[0].text} | select(.a != null) | select(.f != null) | [.a, [.f,(.f | length)]]'