Execute o seguinte comando para instalar JQ no Ubuntu.
$ sudo apt-get install jq
Lendo dados JSON
Suponha que você declarou uma variável json nomeada Jsondata no terminal e correr JQ comando com essa variável para imprimir o conteúdo dessa variável.
$ Jsondata = '["livro": "php 7", "publicação": "apress",Lendo dados JSON com a opção C
-C Opção usa com o comando jq para imprimir cada objeto JSON em cada linha. Depois de executar o seguinte comando, cada objeto da variável jsondata será impresso.
$ echo "$ jsondata" | jq -c '.[] 'Lendo um arquivo JSON
O comando jq pode ser usado para ler o arquivo json também. Crie um arquivo JSON chamado estudantes.JSON com o seguinte conteúdo para testar os próximos comandos deste tutorial.
Execute o seguinte comando para ler os alunos.arquivo json.
$ jq '.Alunos.JSONLendo o arquivo JSON com '|'
Você pode usar '|' Símbolo da seguinte maneira de ler qualquer arquivo JSON.
$ estudantes de gato.json | jq '.'Lendo valores de chave única
Você pode ler facilmente qualquer objeto em particular de um arquivo json usando JQ comando. Em Alunos.JSON, Existem quatro objetos. Estes são rolo, nome, lote e departamento. Se você quiser ler o valor de departamento Chave apenas de cada registro e execute JQ comando da seguinte maneira.
$ jq '.[] | .estudantes do departamento.JSONLendo várias chaves
Se você deseja ler dois ou mais valores de objetos dos dados JSON, mencione os nomes dos objetos separando a vírgula (,) no comando jq. O comando a seguir recuperará os valores de nome e departamento chaves.
$ jq '.[] | .nome, .estudantes do departamento.JSONRemova a chave dos dados JSON
JQ O comando é usado não apenas para ler dados JSON, mas também para exibir dados removendo a chave específica. O comando a seguir imprimirá todos os valores -chave de Alunos.JSON arquivo excluindo lote chave. mapa e del função são usados em JQ comando para fazer a tarefa.
$ jq 'mapa (del (.lote)) 'alunos.JSONValores de mapeamento
Sem excluir a chave dos dados JSON, você pode usar a função do mapa com o comando jq para vários fins. Os valores numéricos dos dados JSON podem ser aumentados ou diminuídos pela função do mapa. Crie um arquivo JSON nomeado Número.JSON com o seguinte conteúdo para testar os próximos comandos.
[40,34,12,67,45]Execute o seguinte comando para adicionar 10 com cada valor de objeto de Números, JSON.
$ jq 'mapa (.+10) 'números.JSONExecute o seguinte comando para subtrair 10 de cada valor de objeto de Números, JSON.
$ jq 'mapa (.-10) 'números.JSONPesquisando valores por índice e comprimento
Você pode ler objetos do arquivo json especificando o índice e o comprimento específicos. Crie um arquivo JSON nomeado cores.JSON com os seguintes dados.
["Vermelho", "verde", "azul", "amarelo", "roxo"]Execute o seguinte comando para ler dois valores a partir do terceiro índice de cores.arquivo json.
$ jq '.[2: 4] cores.JSONVocê pode especificar o comprimento ou o índice de partida para ler dados do arquivo json. No exemplo a seguir, o número de valor de dados é fornecido apenas. Nesse caso, o comando lerá quatro dados do primeiro índice de cores.JSON.
$ jq '.[: 4] cores.JSONVocê pode especificar o ponto de partida apenas sem nenhum valor de comprimento em JQ comando e o valor podem ser positivos ou negativos. Se o ponto de partida for positivo, o índice contará do lado esquerdo da lista e a partir de zero. Se o ponto de partida for negativo, o índice contará do lado direito da lista e a partir de um. No exemplo seguinte, o ponto de partida é -3. Então, os três últimos valores dos dados serão exibidos.
$ jq '.[-3:] cores.JSONQuando você trabalhará com dados JSON e deseja analisar ou manipular dados de acordo com seus requisitos, o comando jq ajudará você a facilitar sua tarefa.