[英]Use jq to remove key/value pairs based on other file
我有 2 个 json 文件,其中包含我的应用程序的翻译:
zh-CN.json:
{
"car": "car",
"bike": "bike",
"tree": "tree",
}
nl-NL.json:
{
"car": "auto",
"bike": "fiets",
"tree": "boom",
"house": "huis"
}
如您所见,我已从 en-US.json 文件(以及许多其他文件)中删除了house
。 如何使用 jq 从我的 nl-NL.json 文件中删除相同的house
条目? 我基本上想根据密钥获取两个文件的交集。
我一直在玩jq 'keys'
来获取所有密钥,但这不起作用。 我认为应该在jq --slurpfile en en-US.json 'del($en)' nl-NL.json
的方向找到它,但这完全行不通:(有什么建议吗?
您正在寻找这样的东西:
$ jq 'del(.[(keys - (input | keys))[]])' nl-NL.json en-US.json
{
"car": "auto",
"bike": "fiets",
"tree": "boom"
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.