Fish Shell:
Arbeider med JSON
Hvordan:
Fish Shell har i seg selv ikke innebygde verktøy for å parse og generere JSON. Imidlertid integrerer den sømløst med tredjepartsverktøy som jq
for JSON-behandling. jq
er en kraftig og allsidig kommandolinje JSON-prosessor som lar deg skive, filtrere, kartlegge og transformere strukturerte data med et enkelt og uttrykksfullt språk.
Parse JSON med jq
For å parse en JSON-fil og ekstrahere data ved hjelp av jq
:
# Anta at du har en JSON-fil ved navn 'data.json' med innhold: {"name":"Fish Shell","version":"3.4.0"}
cat data.json | jq '.name'
# Eksempel på utdata
"Fish Shell"
Generere JSON med jq
Lage JSON-innhold fra shell-variabler eller utdata:
# Opprett JSON-objekt fra variabler
set name "Fish Shell"
set version "3.4.0"
jq -n --arg name "$name" --arg version "$version" '{name: $name, version: $version}'
# Eksempel på utdata
{
"name": "Fish Shell",
"version": "3.4.0"
}
Filtrere JSON-samlinger
Anta at vi har en JSON-array med objekter i en fil ved navn versions.json
:
[
{"version": "3.1.2", "stable": true},
{"version": "3.2.0", "stable": false},
{"version": "3.4.0", "stable": true}
]
For å filtrere denne arrayen for kun stabile versjoner:
cat versions.json | jq '.[] | select(.stable == true) | .version'
# Eksempel på utdata
"3.1.2"
"3.4.0"
Eksemplene som er gitt demonstrerer kraften av å integrere jq
med Fish Shell for JSON-operasjoner. Å utnytte slike verktøy beriker shell-opplevelsen, noe som gjør den til et formidabelt miljø for håndtering av moderne dataformater.