В JQ Manual имеется фильтр-назначение: | = и его пример.
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. тогда 1 иначе 0 end не выдаст это?
1
0
1
1
0
0
Пожалуйста, помогите понять, как ** | = ** операция поддерживает, может поддерживать формат ввода.