我想删除JSON列表中具有值为false
的“enabled”键的条目。
下面的jq cmd确实选择了假条目,但现在我想删除这些条目并保留结构的其余部分。
jq '.app.sig[] | select(.enabled==false)' app-test.json
字符串
JSON输入示例
{
"app" : {
"id" : "11111111",
"name" : "test",
"general" : {
"allow" : "sdasdass",
},
"settings" : {
"max" : "8192",
},
"sig" : [
{
"enabled" : true,
"Staging" : false,
"sId" : "200101556"
},
{
"enabled" : false,
"Staging" : false,
"sId" : "200012071"
},
{
"enabled" : true,
"Staging" : false,
"sId" : "200012002"
},
],
"version" : "v1",
}
}
型
感谢任何帮助。
谢啦,谢啦
1条答案
按热度按时间xam8gpfp1#
有了一个有效的JSON输入,就可以直接使用
del
和select
:字符串
Demo
或者,使用
map
使用您想要保留的内容重置数组:型
Demo的
在这两种情况下,都可以直接使用
select
中的布尔值(可能取反)。输出量:型