Como imprimir um arquivo JSON no terminal Linux

8 de dezembro de 2020

Os arquivos JSON são incríveis porque armazenam a coleção de dados em um formato legível. No entanto, ler o arquivo JSON pode ser uma dor se o arquivo JSON for reduzido.

Veja isso como um exemplo:

Imprimir Json

JSON reduzido é difícil de ler

Um computador pode lê-lo facilmente. Mesmo um ser humano ainda pode lê-lo, mas se o arquivo JSON estiver formatado corretamente para exibir o conteúdo, será muito mais fácil. Quero dizer, os arquivos JSON devem ser lidos assim, afinal:

Pretty Printed Json

JSON formatado é mais fácil de ler

Você pode usar a maioria dos editores de texto com alguns plug-ins para exibi-lo com a formatação adequada. No entanto, se você estiver preso a um terminal ou se quiser fazer isso em seu script de shell, as coisas serão diferentes.

Se você tiver um arquivo reduzido, deixe-me mostrar como imprimir o arquivo JSON no terminal Linux.

Imprima JSON com comando jq no Linux

jq é um processador JSON de linha de comando. Você pode usá-lo para dividir, filtrar, mapear e transformar dados estruturados. Não vou entrar em detalhes sobre como usar a ferramenta de linha de comando jq aqui.

Para usar o jq, você precisa instalá-lo primeiro. Você pode usar seu gerenciador de pacotes da distribuição para instalá-lo. Com repositório universe ativado, você pode instalá-lo no Ubuntu usando o comando apt:

Comandos para usar no terminal

sudo apt install jq

Depois de instalá-lo, use-o da seguinte maneira para imprimir o arquivo JSON na tela:

Comandos para usar no terminal

jq . sample.json

Pretty Print Json Linux Terminal

Você também pode usar com o comando cat, embora eu ache que isso seja meio inútil.

Comandos para usar no terminal

cat sample.json | jq

Lembre-se de que o comando acima não afetará o arquivo JSON original. Nenhuma alteração será gravada nele.

Você provavelmente já sabe como redirecionar a saída do comando para um arquivo no Linux. Você provavelmente também sabe que não pode redirecionar para o mesmo arquivo e que o comando tee não tem garantia de funcionar o tempo todo.

Se você deseja modificar o arquivo JSON original com esse formato de impressão mais legível, pode canalizar a saída analisada para um novo arquivo e, em seguida, copiá-lo para o arquivo JSON original.

Comandos para usar no terminal

jq . sample.json > pretty.json

Pretty Printing Json Linux Terminal

Vamos adotar uma postura inversa e minimizar um arquivo JSON bem formatado. Para reduzir um arquivo JSON, você pode usar a opção compacta -c.

Comandos para usar no terminal

jq -c < pretty.json

Minificar arquivo Json Linux

Exibindo arquivo minificado

Você também pode usar cat e redirecionar se quiser:

Comandos para usar no terminal

cat pretty.json | jq -c

Usando Python para imprimir o arquivo JSON no Linux

É bem provável que você tenha o Python instalado em seu sistema. Se for esse o caso, você pode usá-lo para imprimir o arquivo JSON no terminal:

Comandos para usar no terminal

python3 -m json.tool sample.json

Pretty Print Json With Python

Sei que existem outras maneiras de formatar arquivos JSON e imprimir da maneira desejada. Você pode explorá-los por conta própria, mas esses dois são suficientes para fazer o trabalho que é imprimir o arquivo JSON.

Confira também a versão original desse post em inglês
Esse post foi originalmente escrito por Abhishek Prakash e publicado no site itsfoss.com. Traduzido pela rtland.team

How to Pretty Print JSON File in Linux Terminal

Propaganda
Blog Comments powered by Disqus.
Propaganda