¿Cómo imprimir bastante json usando jq independiente?

31

Actualmente, cuando quiero imprimir bastante un archivo json usando jq , uso:

cat file.json | grep jq .

Sin embargo, esperaría jqaceptar un nombre de archivo como argumento sin tener que recurrir cat.

La página del manual dice:

jq [opciones ...] filtro [archivos ...]

... Por defecto, jq ​​lee una secuencia de objetos JSON (espacios en blanco separados) de stdin. Se pueden especificar uno o más archivos, en cuyo caso jq leerá la entrada de esos en su lugar.

Aún corriendo:

jq file.json

falla arrojando errores de compilación que las claves no están definidas.

¿Cómo se supone que debo agregar el archivo al ejecutarlo jq?

k0pernikus
fuente

Respuestas:

49
jq . file.json

es lo que estaba buscando No me di cuenta de que .es un filtro y no un marcador de posición para el contenido canalizado:

.

El filtro absoluto más simple (y menos interesante) es .. Este es un filtro que toma su entrada y la produce sin cambios como salida.

Y la página del manual deja en claro que el filtro es un argumento obligatorio.

k0pernikus
fuente