Cara Membaca JSON dengan jq
di Bash Script
Halo teman-teman! Hari ini kita akan belajar cara membaca file JSON menggunakan alat hebat bernama jq
di dalam Bash Script. Bagi kalian yang belum tahu, jq
adalah command-line tool yang bisa digunakan untuk memproses dan memanipulasi JSON dengan mudah. So, langsung aja yuk kita mulai!
Apa Itu jq
?
jq
adalah alat command-line yang super keren untuk memproses data JSON. Dengan jq
, kalian bisa filter, slicing, atau memodifikasi data JSON langsung dari terminal atau di dalam script Bash. Kenapa kita perlu jq
? Karena JSON semakin populer sebagai format pertukaran data di web dan jq
membuatnya mudah dikelola.
Installation jq
Sebelum mulai, pastikan jq
sudah terinstall di sistem kamu:
sudo apt-get install jq # untuk Debian/Ubuntu
atau
brew install jq # untuk macOS
Kalau pakai Windows, bisa didownload dari situs resmi.
Basic Command jq
Misalkan kita punya data JSON seperti ini di file data.json
:
{
"nama": "Budi",
"umur": 25,
"kota": "Jakarta"
}
Untuk menampilkan semua isi JSON, gunakan perintah:
jq '.' data.json
Hasilnya akan sama seperti isi file data.json
.
Membaca Value dari Key Tertentu
Kalau mau mengambil nilai dari key tertentu, misalnya nama
:
jq '.nama' data.json
Hasilnya: "Budi"
.
Membaca Nested JSON
Ada kasus di mana JSON punya struktur nested (bersarang). Misalnya data karyawan:
{
"karyawan": {
"nama": "Ani",
"pekerjaan": "Developer"
},
"perusahaan": "ABC Corp"
}
Untuk akses nama
dalam karyawan
:
jq '.karyawan.nama' data.json
Hasilnya: "Ani"
.
Membaca Array JSON
Misalkan ada array dalam JSON:
{
"buah": ["apel", "mangga", "pisang"]
}
Untuk akses semua elemen array:
jq '.buah[]' data.json
Hasilnya:
"apel"
"mangga"
"pisang"
Filter Data JSON
Kita bisa filter dengan kondisi tertentu. Misal punya data:
{
"orang": [
{"nama": "Budi", "umur": 25},
{"nama": "Ani", "umur": 30},
{"nama": "Cici", "umur": 28}
]
}
Mau cari orang yang umurnya lebih dari 25:
jq '.orang[] | select(.umur > 25)' data.json
Hasilnya:
{"nama": "Ani", "umur": 30}
{"nama": "Cici", "umur": 28}
Manipulasi Data dengan jq
jq
juga bisa dipakai untuk manipulasi data JSON. Misalnya tambah field baru:
jq '.orang[] | .kota = "Jakarta"' data.json
Hasilnya setiap item akan ditambah field kota
dengan nilai "Jakarta"
.
Menggunakan jq
di Bash Script
Sekarang waktunya gabungkan jq
ke dalam Bash Script. Misal kita punya script read_json.sh
:
#!/bin/bash
# Path ke file JSON
FILE="data.json"
# Baca nama dari file JSON
NAMA=$(jq -r '.nama' "$FILE")
# Tampilkan hasil
echo "Nama: $NAMA"
Pada contoh di atas, option -r
digunakan untuk mendapatkan raw output (tanpa tanda petik ganda).
jq
adalah alat yang powerful untuk bekerja dengan JSON di command-line. Dengan jq
, kalian bisa baca, filter, dan manipulasi data JSON dengan mudah di Bash Script. Keren, kan? Semoga artikel ini membantu teman-teman semua. Selamat mencoba! ✌️
Jika ada pertanyaan atau request untuk topik selanjutnya, langsung saja tulis di komentar ya!