tutorial soljson smart remix org optimize false español curso aprender 59dbf8f1 arrays json addition jq fileslurp

arrays - soljson - ¿Cómo combinar la secuencia de objetos en jq en un objeto?



solidity español (2)

Si su entrada es un flujo de objetos, deben ser "ajustados", por ejemplo, utilizando la opción de línea de comandos -s para combinarlos.

Por lo tanto, para combinar objetos en el flujo de entrada, use:

jq -s add

Para el segundo problema, creando una matriz:

jq -s .

(Por supuesto, existen otras alternativas, pero son simples y no requieren la versión más reciente de jq. Con jq 1.5, puede usar ''entradas'', por ejemplo, jq -n ''[inputs]'' )

Me gustaría convertir el flujo de objetos:

{ "a": "green", "b": "white" } { "a": "red", "c": "purple" }

en un objeto:

{ "a": "red", "b": "white", "c": "purple" }

Además, ¿cómo puedo envolver la misma secuencia en una matriz?

[ { "a": "green", "b": "white" }, { "a": "red", "c": "purple" } ]

Lamentablemente, el manual carece seriamente de exhaustividad, y Google tampoco encuentra las respuestas.


Una alternativa a absorber con la opción de línea de comando -s es usar el filtro de inputs . Al igual que:

jq -n ''[inputs] | add''

Esto producirá un objeto con todos los objetos de entrada combinados.