【发布时间】:2018-07-31 17:53:05
【问题描述】:
我有一个这样的 json 文件:
{"caller_id":"123321","cust_name":"abc"}
{"caller_id":"123443","cust_name":"def"}
{"caller_id":"123321","cust_name":"abc"}
{"caller_id":"234432","cust_name":"ghi"}
{"caller_id":"123321","cust_name":"abc"}
....
我试过了:
jq -s 'unique_by(.field1)'
但这会删除所有重复的项目,我希望只保留其中一个重复的项目,以获得这样的文件:
{"caller_id":"123321","cust_name":"abc"}
{"caller_id":"123443","cust_name":"def"}
{"caller_id":"234432","cust_name":"ghi"}
....
【问题讨论】:
-
但是这些对象中都没有
field1...所有内容都将被删除。您需要键入一个实际存在的字段。例如,jq -cs 'unique_by(.cust_name)[]' input.json