Fish Shell:
Trabalhando com JSON
Como Fazer:
O Fish Shell, por si só, não possui utilidades internas para análise e geração de JSON. No entanto, ele integra-se perfeitamente com ferramentas de terceiros como o jq
para processamento de JSON. O jq
é um processador JSON de linha de comando poderoso e versátil que permite recortar, filtrar, mapear e transformar dados estruturados com uma linguagem simples e expressiva.
Analisando JSON com jq
Para analisar um arquivo JSON e extrair dados usando jq
:
# Supondo que você tenha um arquivo JSON chamado 'data.json' com o conteúdo: {"name":"Fish Shell","version":"3.4.0"}
cat data.json | jq '.name'
# Exemplo de saída
"Fish Shell"
Gerando JSON com jq
Criando conteúdo JSON a partir de variáveis ou saídas do shell:
# Criar objeto JSON a partir de variáveis
set name "Fish Shell"
set version "3.4.0"
jq -n --arg name "$name" --arg version "$version" '{name: $name, version: $version}'
# Exemplo de saída
{
"name": "Fish Shell",
"version": "3.4.0"
}
Filtrando Coleções JSON
Suponha que temos um array JSON de objetos em um arquivo chamado versions.json
:
[
{"version": "3.1.2", "stable": true},
{"version": "3.2.0", "stable": false},
{"version": "3.4.0", "stable": true}
]
Para filtrar este array apenas pelas versões estáveis:
cat versions.json | jq '.[] | select(.stable == true) | .version'
# Exemplo de saída
"3.1.2"
"3.4.0"
Os exemplos fornecidos demonstram o poder de integrar o jq
com o Fish Shell para operações com JSON. Aproveitar tais ferramentas enriquece a experiência do shell, tornando-o um ambiente formidável para lidar com formatos de dados modernos.