JC, mengubah output alat command-line populer menjadi JSON
(github.com/kellyjonbrazil)Ringkasan konverter JSON JC
jcmengubah output dari alat CLI, tipe file, dan string umum ke format JSON sehingga lebih mudah diparse dalam skrip.- Melalui contoh perintah
dig, Anda dapat melihat output yang telah dikonversi ke format JSON, lalu memprosesnya lebih lanjut dengan alat sepertijqataujello. - Juga dapat digunakan sebagai pustaka Python; dalam hal ini, alih-alih JSON, ia mengembalikan dictionary Python, daftar dictionary, atau objek iterable malas dari dictionary.
Cara memasang konverter JSON JC
- Dapat dipasang melalui
pip, repositori paket OS, atau unduhan biner. - Menyediakan perintah instalasi untuk berbagai distribusi Linux, macOS, dan FreeBSD.
Cara menggunakan konverter JSON JC
- Menerima input yang di-pipe dari
STDINdan menampilkan output dari perintah sebelumnya keSTDOUTdalam format JSON. - Dapat dikonversi dengan menambahkan
jcdi depan perintah menggunakan sintaks "magic", atau digunakan di depan path file/proc. - Berbagai opsi parser dan fitur slice memungkinkan penyesuaian format output serta pemrosesan baris tertentu.
Fitur konverter JSON JC
- Menyediakan representasi data default dan mentah, serta mengonversi angka yang dikenali menjadi nilai JSON int/float sesuai skema.
- Dengan opsi
--rawatau parameterraw=True, Anda dapat mengakses JSON mentah yang telah dipraproses. - Parser streaming memungkinkan pemrosesan output perintah dalam jumlah besar secara efisien dalam penggunaan memori.
Pentingnya konverter JSON JC
- Motivasi proyek untuk membawa filosofi Unix ke abad ke-21 serta berbagai kasus penggunaannya dapat dilihat di posting blog dan wawancara.
- Berguna untuk parsing output perintah di berbagai lingkungan seperti skrip Bash, Ansible, Saltstack, Nornir, dan FortiSOAR.
Kompatibilitas konverter JSON JC
- Beberapa parser bekerja lintas platform, sedangkan parser yang mengonversi output khusus platform dapat menghasilkan pesan peringatan kompatibilitas.
- Semua informasi parser dapat diperiksa dengan menjalankan
jc -ap.
Cara berkontribusi pada konverter JSON JC
- Kontribusi untuk penambahan/perbaikan kode atau parser sangat disambut; Anda dapat menggunakan
jc/parsers/foo.pyataujc/parsers/foo_s.pysebagai templat dan mengirimkan pull request.
Pendapat GN⁺
Hal terpenting dari tulisan ini adalah bahwa jc dapat mengubah output dari berbagai perintah, tipe file, dan string menjadi JSON sehingga bisa diproses secara terprogram. Ini memudahkan pengembang dalam menangani data, dan sangat berguna terutama saat melakukan scripting di lingkungan Unix dan Linux. Alasan tulisan ini menarik adalah karena jc merupakan alat yang dapat secara signifikan meningkatkan otomasi dan efisiensi dalam pengembangan perangkat lunak serta administrasi sistem.
1 komentar
Opini Hacker News
Menyelesaikan masalah konversi output perintah ke format JSON di FreeBSD dengan menggunakan pustaka
libxolsdidukung, tetapi ada kasus dukungannya dihapus--jsonjuga di Unix/LinuxMenyampaikan kekhawatiran tentang sulitnya pemeliharaan
--<CMD>bisa membuat bantuan/manual menjadi lebih rumitMemperkenalkan alat bernama Nushell
Penilaian positif terhadap dukungan output JSON pada alat CLI
Opini tentang cara penggunaan alat
jcjc dig example.comseharusnya menjadi cara penggunaan utama yang lebih baik dibandingdig example.com | jc --digMenyatakan preferensi terhadap semua output di PowerShell yang berbentuk objek
Menyampaikan rasa hormat kepada orang yang menangani pemeliharaan alat
jcPertanyaan tentang daftar alat perintah Unix modern yang menerima opsi
--jsonMenunjukkan cacat desain Unix
Mengungkapkan keheranan karena tidak menggunakan
textfsmtextfsmbanyak digunakan untuk mem-parsing output CLI perangkat jaringan