Tengo un archivo JSON en CentOS donde todo el texto está en la misma línea. ¿Cómo puedo formatearlo con todas las sangrías correctas y todo?
Comentarios
Respuesta
Use jq un muy buen procesador JSON y por preferencia personal, es el mejor disponible en el mercado
para una impresión bonita, use
jq . file_name
Comentarios
- El problema que tengo actualmente con jq es que es muy liberal. Básicamente, solo quiero que cambie los espacios en blanco, pero en cambio cambia cosas como 1.23e5 a 123000 y 0 a 0.0 y NaN a nulo y esas cosas. Debido a esto, no puedo ' confiar más en él. ' no es solo un formateador, ' también es un desinfectante al mismo tiempo, que no es lo que quiero en este momento.
Respuesta
Si no desea instalar un paquete adicional y tiene Python disponible, puede hacer:
python -m json.tool myfile.json
También admite la lectura de STDIN
Respuesta
Utilice el paquete yajl
, otra biblioteca JSON más. En CentOS 7, se encuentra en el repositorio base y probablemente ya esté instalado en la máquina.
Para imprimir con estilo un archivo JSON:
cat myfile.json | json_reformat
o simplemente
json_reformat < myfile.json
Para verificar que un archivo tiene la sintaxis JSON correcta:
json_verify < myfile.json
Comentarios
- instalar con
sudo apt install yajl-tools
en Ubuntu.
M-X indent-selection
).jq
. También es muy útil si desea procesar JSON.