[json] jq 조건부 출력

json을 사용하여 jq 를 사용 하고 있습니다. 조건부로 인쇄하는 방법이 궁금합니다.

현장 통화에 관심이 있다고 가정 해 보겠습니다 geo. 다음 명령을 사용하여 항목이 하나만 있음을 알았습니다.geo 있습니다이 null:

% cat all.json | jq '.geo != null' | sort | uniq -c
   1 false
6891 true

다른 모든 항목을 인쇄하지 않고 해당 항목 만 인쇄하려면 어떻게해야합니까?

print매뉴얼에서 명령 과 같은 것을 보지 못했습니다 . 그리고 이것은 작동하지 않습니다 : cat all.json | jq 'if .place == null then . end'. jq구문 오류에 대해 불평했습니다.



답변

선택 기능을 사용하여 필수 항목 만 가져올 수 있습니다 .

jq 'select(.geo != null)' all.json


답변


댓글 달기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다