indentar correctamente json

Formatear JSON desde la terminal


Cada día utilizo más el formato JSON tanto en los servicios web que utilizo como en mis propios desarrollos (y eso que xml+xslt+xpath siempre han sido mi debilidad y, al principio, veía una pérdida de tiempo el uso de JSON 😅)

Aunque existen interesantes servicios online para formatear el contenido de un JSON como  JSON Formatter de Curious Concept (uno de mis pretty printers favoritos) llega un momento (sobre todo en función de los datos que puedan contener tus ficheros JSON) en los que empiezas a desconfiar de qué puedan hacer con tus datos los “formateadores online” y terminas planteándote la necesidad de dar formato en local desde la terminal (o algún addon para tu editor de textos favoritos) así que aquí dejo anotada la opción que yo utilizo con la esperanza de que pueda ser de utilidad a cualquiera de nuestros lectores…

Personalmente he optado por el comando jq que se puede instalar fácilmente en las principales distribuciones; en el caso de Arch Linux basta con un

yaourt -S jq

y cuenta con un interesante cantidad de parámetros

Para facilitarme el uso (y evitar tener que estar guardando y procesando ficheros de texto con los json a procesar), opto por hacer uso del comando xclip que me permite gestionar el portapapeles desde la terminal de comandos asi me basta con:

  1. Copiar en el portapapeles el JSON a procesar
  2. Lanzar el siguiente comando desde la terminal

xclip -o | jq .

Para obtener un json perfectamente formateado como el del siguiente ejemplo

Conclusión

Truco para formatear cualquier fichero JSON directamente desde la terminal del comando evitando subir a servicios online datos sensibles.

Y tú…

  • ¿Utilizas el comando jq?
  • ¿Cómo sueles formatear tus datos JSON?
  • ¿Tu editor de textos admite el formateo de ficheros JSON?
  • ¿Eres más de XML o de JSON?

4 comentarios en “Formatear JSON desde la terminal

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios .