小编mps*_*mps的帖子

从匹配特定键的 JSON 中删除所有值

通过特定标签/键从整个 JSON 中删除任意值的简单方法是什么?我的 JSON 可能具有任意深度,因此应以递归方式删除标签。 

{
   "root": [
      {
         "name": "blah 1",
         "remove": [ 1, 2, 3 ],
         "new list": [
            {
               "name": "blah 2",
               "remove": null,
               "new list": [
                  {
                     "name": "blah 3",
                     "remove": [
                        {
                           "name": "blah 4",
                           "new list": []
                        },
                        {
                           "name": "blah 5",
                           "new list": []
                        }
                     ]
                  }
               ]
            },
            {
               "name": "blah 6",
               "new list": []
            }
         ]
      }
   ]
}
Run Code Online (Sandbox Code Playgroud)

我想删除所有带有 label 的元素"remove",以便最终结果如下所示:

{
   "root": [
      {
         "name": "blah 1", …
Run Code Online (Sandbox Code Playgroud)

bash recursion json key jq

5
推荐指数
2
解决办法
762
查看次数

标签 统计

bash ×1

jq ×1

json ×1

key ×1

recursion ×1