在JQ手册中,有一个Update-assignment: |= 过滤器及其示例。
为什么以下代码没有生成JSON流,而是保留了原始的嵌套列表格式?
请帮助理解位或(**|=**)操作如何维护输入的格式。
jq '(..|select(type=="boolean")) |= if . then 1 else 0 end'
Input [true,false,[5,true,[true,[false]],false]]
Output [1,0,[5,1,[1,[0]],0]]
为什么以下代码没有生成JSON流,而是保留了原始的嵌套列表格式?
1
0
1
1
0
0
对我来说,(..|select(type=="boolean"))会产生:
true
false
true
true
false
false
那么应用 |= if . then 1 else 0 end 就不会产生这样的结果?
1
0
1
1
0
0
请帮助理解位或(**|=**)操作如何维护输入的格式。