ฉันกำลังพยายามjq
แยกวิเคราะห์โครงสร้าง JSON เช่น:
{
"a" : 1,
"b" : 2,
"c" : "{\"id\":\"9ee ...\",\"parent\":\"abc...\"}\n"
}
นั่นคือองค์ประกอบใน JSON คือสตริงที่มี Escape json
ดังนั้นฉันมีบางอย่างตามแนวของ
$ jq [.c] myFile.json | jq [.id]
แต่ที่เกิดปัญหากับ jq: error: Cannot index string with string
เนื่องจากเอาต์พุตของ. c เป็นสตริงไม่ใช่ JSON มากกว่า ฉันจะให้ jq แยกวิเคราะห์สตริงนี้ได้อย่างไร
วิธีการแก้ปัญหาแรกของฉันคือการใช้ sed เพื่อแทนที่ทุกตัวอักษรหลบหนี ( \":\"
, \",\"
และ\"
) แต่ที่ยุ่งของผมถือว่ามีวิธีที่สร้างขึ้นในjq
การทำเช่นนี้?
ขอบคุณ!
แก้ไข: นอกจากนี้เวอร์ชัน jq ที่มีอยู่ที่นี่คือ:
$ jq --version
jq version 1.3
ฉันเดาว่าฉันสามารถอัปเดตได้หากจำเป็น