Tôi đang sử dụng jq để chơi với json. Tôi đã tự hỏi làm thế nào để có điều kiện in một cái gì đó trong đó.
Giả sử tôi quan tâm đến một cuộc gọi thực địa geo
. Tôi đã sử dụng lệnh sau và phát hiện ra chỉ có một mục nhập geo
là null
:
% cat all.json | jq '.geo != null' | sort | uniq -c
1 false
6891 true
Làm cách nào tôi có thể chỉ in ra mục nhập đó mà không in mọi thứ khác?
Không thấy một cái gì đó giống như print
lệnh trong sách hướng dẫn. Và điều này không làm việc: cat all.json | jq 'if .place == null then . end'
. jq
bị phàn nàn về lỗi cú pháp.
cat all.json | jq 'select(.geo != null) | .geo' > geo-only.json