2017-09-16 131 views
0

這不僅是解析一個JSON。我正在使用curl從我得到json格式的地方打一個url,並且我想將該json格式存儲在一個變量中。舉一個例子:我有一個JSON格式是這樣的:解析一個JSON到一個變量,並從該變量獲取值到另一個變量

[ { 

    "abc": "abc.jsonTest.server.target", 
     "bcd": [ 
       [ 
       66, 
       123546789 
       ], 
       [ 
       null, 
       165423579 
       ] 

     ] 

} 
] 

欲此JSON存儲在像「Y」的變量,並從該可變我想在一個變量「x」抓取66和存儲。
我試圖

x= $(($y | jq .[0] | jq '.bcd[0]' | jq .[0])) 
echo $y 

但是,這是行不通的。

回答

0

給這樣的嘗試,首先設置y

$ y='[{       

    "abc": "abc.jsonTest.server.target", 
    "bcd": [ 
     [ 
      66, 
      123546789 
     ], 
     [ 
      null, 
      165423579 
     ] 

    ] 

}]' 

測試提取值:

$ echo $y | jq '.[].bcd[0][0]' 

如果這樣的作品則只是將其保存到x

$ x=$(echo $y | jq '.[].bcd[0][0]') 

x現在應該包含66

$ echo $x 
66