Algumas dicas para usar a função `debug`
O jq traz um prático filtro debug.
Usa-o enquanto estás a desenvolver as soluções dos teus exercícios, para inspecionar os dados que estão nesse momento no pipeline do jq.
O debug imprime um "array de depuração" no stderr.
Devolve a entrada inalterada.
O primeiro elemento do array é a string "DEBUG:".
O segundo elemento depende da forma como invocas o debug.
a função debug de aridade zero coloca uma representação compacta da entrada no array de depuração:
jq -n '[11, 22, 33] | debug | map(. * 2)'
produz
["DEBUG:",[11,22,33]]
[
22,
44,
66
]
a versão de aridade um passa a entrada pelo filtro indicado:
jq -n '[11, 22, 33] | debug("length: \(length), last: \(.[-1])") | map(. * 2)'
["DEBUG:","length: 3, last: 33"]
[
22,
44,
66
]
O filtro não tem de ser uma string. Pode ser qualquer coisa, incluindo várias expressões separadas por vírgulas, para obteres uma saída de depuração em várias linhas:
jq -n '[11, 22, 33] as $a | 44 | debug("I am here:", $a, .)'
["DEBUG:","I am here:"]
["DEBUG:",[11,22,33]]
["DEBUG:",44]
44