Bash:
Trabajando con JSON
Cómo hacerlo:
Bash por sí solo carece de capacidades integradas de análisis de JSON, pero jq
es un poderoso procesador JSON de línea de comandos que llena este vacío. Así es como se usa:
Leyendo un archivo JSON:
Ejemplo de data.json
:
{
"name": "Jane Doe",
"email": "[email protected]",
"location": {
"city": "New York",
"country": "USA"
}
}
Para leer y extraer el nombre del archivo JSON:
jq '.name' data.json
Salida:
"Jane Doe"
Modificando datos JSON:
Para actualizar la ciudad a “Los Angeles” y volver a escribir en el archivo:
jq '.location.city = "Los Angeles"' data.json > temp.json && mv temp.json data.json
Analizando JSON desde una variable:
Si tienes JSON en una variable Bash, jq
aún puede procesarlo:
json_string='{"name": "John Doe", "email": "[email protected]"}'
echo $json_string | jq '.name'
Salida:
"John Doe"
Trabajando con arreglos:
Dado un arreglo de elementos en JSON:
{
"items": ["apple", "banana", "cherry"]
}
Para extraer el segundo elemento (la indexación comienza en 0):
jq '.items[1]' data.json
Salida:
"banana"
Para operaciones más complejas y filtros, jq
tiene un manual comprensivo y tutoriales disponibles en línea, haciéndolo una herramienta versátil para todas tus necesidades de Bash/JSON.