[英]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.