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.