[英]Reading JSON data in a shell script
我有一個JSON文件,其中包含有關某些圖像的數據:
{
"imageHeight": 1536,
"sessionID": "4340cc80cb532ecf106a7077fc2a166cb84e2c21",
"bottomHeight": 1536,
"imageID": 1,
"crops": 0,
"viewPortHeight": 1296,
"imageWidth": 2048,
"topHeight": 194,
"totalHeight": 4234
}
我希望在shell腳本中以簡單的方式處理這些值。 我在網上搜索但無法找到任何簡單的材料來理解。
編輯:我想對這些價值觀做些什么?
我正在使用convert(Imagemagick)來處理圖像。 所以,整個工作流程都是這樣的。 從json文件中的一行讀取條目說裁剪,然后在裁剪圖像時使用該值:
convert -crop [來自json的圖像寬度] x [來自json的圖像高度] +0 + [來自json的裁剪值] [來自json的session_id] - 來自json的[imageID] .png [sessionID] - [ImageID] -cropped.png
我建議使用jq
。 例如,要獲取imageHeight
,您可以使用:
jq ".imageHeight" data.json
輸出:
1536
如果要將值存儲在shell變量中,請使用:
variable_name=$(jq ".imageHeight" data.json)
Python的解決方案
import json
from pprint import pprint
json_data=open('json_file')
data = json.load(json_data)
pprint(data)
data['bottomHeight']
輸出:
In [28]: pprint(data)
{u'bottomHeight': 1536,
u'crops': 0,
u'imageHeight': 1536,
u'imageID': 1,
u'imageWidth': 2048,
u'sessionID': u'4340cc80cb532ecf106a7077fc2a166cb84e2c21',
u'topHeight': 194,
u'totalHeight': 4234,
u'viewPortHeight': 1296}
In [29]: data['bottomHeight']
Out[29]: 1536
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.