Bash:
Робота з JSON
Як:
Bash сам по собі не має вбудованих можливостей для аналізу JSON, але jq
- це потужний процесор JSON командного рядка, який заповнює цей прогап. Ось як його використовувати:
Читання файлу JSON:
Зразок data.json
:
{
"name": "Джейн Доу",
"email": "[email protected]",
"location": {
"city": "Нью-Йорк",
"country": "США"
}
}
Щоб прочитати та витягти ім’я з файлу JSON:
jq '.name' data.json
Вивід:
"Джейн Доу"
Модифікація даних JSON:
Щоб оновити місто на “Лос-Анджелес” та записати назад у файл:
jq '.location.city = "Лос-Анджелес"' data.json > temp.json && mv temp.json data.json
Аналіз JSON зі змінної:
Якщо у вас є JSON у змінній Bash, jq
все одно може обробити його:
json_string='{"name": "Джон Доу", "email": "[email protected]"}'
echo $json_string | jq '.name'
Вивід:
"Джон Доу"
Робота з масивами:
Маючи масив елементів у JSON:
{
"items": ["яблуко", "банан", "вишня"]
}
Щоб витягнути другий елемент (індексація починається з 0):
jq '.items[1]' data.json
Вивід:
"банан"
Для більш складних операцій та фільтрації, jq
має всебічний посібник та навчальні матеріали в інтернеті, роблячи його універсальним інструментом для всіх ваших потреб Bash/JSON.