Dalam skrip Unix shell saya, ketika saya menjalankan perintah curl, hasilnya akan ditampilkan seperti di bawah ini yang saya arahkan ke file:
{"type":"Show","id":"123","title":"name","description":"Funny","channelTitle":"ifood.tv","lastUpdateTimestamp":"2014-04-20T20:34:59","numOfVideos":"15"}
Tapi, saya ingin output ini dimasukkan ke dalam format JSON yang dapat dibaca seperti di bawah ini dalam file:
{"type":"Show",
"id":"123",
"title":"name",
"description":"Funny",
"channelTitle":"ifood.tv",
"lastUpdateTimestamp":"2014-04-20T20:34:59",
"numOfVideos":"15"}
Bagaimana cara memformat output dengan cara ini?
json_pp
tampaknya memformat data dalam urutan terbalik dari yang diharapkan. Apakah ada cara untuk membatalkan data?Saya menduga Anda ingin melakukan prettify output JSON. Itu bisa dicapai dengan menggunakan python:
sumber
head
perintah memotong output yang disalurkan ke pipa sebelum mencapai akhir, sehingga "memecahkan" pipa. Jika Anda mengizinkanhead
untuk mengkonsumsi seluruh aliran data dari pipa, saya berharap kesalahan tidak muncul.bisa juga membantu.
sumber
Anda dapat menggunakan modul simpul ini
[sudo] npm i -g json
; // sarankan tidak menggunakan root privilege untuk menginstal modul nodemaka cukup tambahkan
|json
setelah keriting.curl http://localhost:8880/test.json |json
sumber
Ini untuk menambah dari Jawaban Gilles. Ada banyak cara untuk menyelesaikan ini, tetapi secara pribadi saya lebih suka sesuatu yang ringan, mudah diingat dan tersedia secara universal (misalnya datang dengan instalasi LTS standar rasa Linux pilihan Anda atau mudah dipasang) pada sistem * nix umum.
Berikut adalah opsi dalam urutan pilihan mereka:
Modul Python Json.tool
jq (mungkin memerlukan satu kali instalasi)
json_pp (tersedia di Ubuntu 16.04 LTS)
Untuk pengguna Ruby
sumber
cat myFile.json | python -mjson.tool >> myFilePretty.json
kemudian dibuka di editor saya (vim, jangan benci) dan mendapat warna.Saya menemukan json_reformat sangat berguna. Jadi saya hanya melakukan yang berikut:
itu dia!
sumber
Lihat curljson
sumber
Motivasi: Anda ingin mencetak respons JSON yang cantik setelah permintaan perintah ikal.
Solusi : json_pp - alat commandline yang mengkonversi antara beberapa format input dan output (salah satunya adalah JSON). Program ini disalin dari json_xs dan dimodifikasi. Format input default adalah json dan format output default adalah json dengan opsi cantik.
Synposis :
json_pp [-v] [-f from_format] [-t to_format] [-json_opt options_to_json1[,options_to_json2[,...]]]
Formula :
<someCommand> | json_pp
Contoh :
Permintaan
Tanggapan
sumber