Monday, April 8, 2019

Cheat Sheet jq, JSON Processing Tool

jq Tool
JSON adalah format dokumen yang ringan dan digunakan pada hampir setiap layanan pertukaran data. Selain itu JSON juga dapat digunakan sebagai konfigurasi suatu aplikasi atau sistem.  JSON terdiri keys dan value, sedangkan elemennya bisa berbentuk array atau object.  jq adalah aplikasi yang dapat digunakan pada CLI untuk memproses JSON. 

Tool jq tersedia di repository bawaan di hampir semua  distro Linux yang terkenal seperti Debian, Fedora, Centos dan Arch. Sehingga untuk menginstallnya dapat dilakukan dari package manager apt, dnf, packman, dan yast.

Sedangkan untuk anda yang menggunakan sistem operasi lain seperti OSX, Windows, BSD atau Solaris, anda bisa mendownload dari situs resminya disini.


Dan Berikut adalah catatan yang saya himpun selama belajar memproses JSON menggunakan tool jq pada ubuntu server.

Berikut ini adalah dokumentasi cheat sheet command untuk memproses file JSON menggunakan tool jq yang selama ini saya gunakan (akan saya update tiap saya menemukan perintah-perintah baru):

Secara mudah atau cara bodohnya, pola perintah penggunaan jq adalah sebagai berikut :
jq [query_json] [nama_file].json
Menampilkan konten file JSON secara keseluruhan
jq . [nama_file].json
Jika akar/root konten JSON adalah array bisa juga dengan perintah berikut
jq '.[]' file.json
Jika file json adalah object kita bisa mengambil value dari key dengan perintah
jq '.nama_key' file.json
Mengambil value-value pada array object JSON
jq '.nama_key[].nama_key' file.json
Mengambil value pada array object JSON dengan index nomor 5
jq '.nama_key[5].nama_key' file.json
Mengambil value pada array object JSON dengan index nomor 5, 9,12
jq '.nama_key[5,9,12].nama_key' file.json
Mengambil lebih dari satu value pada array object JSON. Contoh mengambil value index nomor 6 dan value dari key date
jq '.nama_key[6].nama_key, .date' file.json
Membuat output object mendatar
jq -c '.nama_key[5,9,12].nama_key' file.json
Contoh penggunaan jq untuk mengambil informasi dari sebuah kontainer dari output JSON. Mengambil port
docker inspect [nama_container]|jq '.[].Config.ExposedPorts| keys| .[]'

note : untuk  melakukan cek atau sekedar melihat file JSON, bisa kita lakukan disini dan dimari

Referensi :
Playground :

No comments:

Post a Comment