在Shell命令行處理JSON數(shù)據(jù)的方法
因?yàn)樽罱幚硪恍?JSON 數(shù)據(jù)格式,所以在經(jīng)過一番搜索后 最終找到了 jq 這個(gè)很棒的工具。jq 允許你直接在命令行下對(duì) JSON 進(jìn)行操作,包括分片、過濾、轉(zhuǎn)換等等。
讓我們通過幾個(gè)例子來說明 jq 的功能:
一、輸出格式化,漂亮的打印效果
如果我們用文本編輯器打開 JSON,有時(shí)候可能看起來會(huì)一團(tuán)糟,但是通過 jq 的 .(點(diǎn))過濾器就可以立馬讓 JSON 的格式規(guī)整起來。
1.用文本編輯器打開后的樣子
2.用 jq 顯示的結(jié)果

二、快速查詢JSON數(shù)據(jù)
利用 jq 能夠以 key 作為關(guān)鍵字來對(duì) JSON 作出快速查詢, 例如:
這將僅僅顯示 cn 鍵對(duì)應(yīng)的值。
jq 的鍵查詢也支持鏈?zhǔn)秸{(diào)用,如:
三、jq的管道操作
熟悉命令行的朋友可能都知道 | (管道)是一個(gè)非常強(qiáng)大的 武器。幸運(yùn)的是,jq 也提供了對(duì)管道的支持。
在這里,我們使用管道過濾并構(gòu)造出 pNum 對(duì)象。
四、總結(jié)
如果你需要在命令行下處理 JSON,我強(qiáng)烈推薦 jq。jq 不僅 能夠滿足一般性的常見需求,更包含運(yùn)算、內(nèi)置函數(shù)、條件比較、 變量聲明、自定函數(shù)等強(qiáng)大功能。對(duì)此感興趣的朋友,不妨通過 jq 的官方手冊(cè) 進(jìn)行學(xué)習(xí)。
PS:關(guān)于json操作,這里再為大家推薦幾款比較實(shí)用的json在線工具供大家參考使用:
在線JSON代碼檢驗(yàn)、檢驗(yàn)、美化、格式化工具:
http://tools.jb51.net/code/json
JSON在線格式化工具:
http://tools.jb51.net/code/jsonformat
在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
json代碼在線格式化/美化/壓縮/編輯/轉(zhuǎn)換工具:
http://tools.jb51.net/code/jsoncodeformat
在線json壓縮/轉(zhuǎn)義工具:
http://tools.jb51.net/code/json_yasuo_trans
C語言風(fēng)格/HTML/CSS/json代碼格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json
相關(guān)文章
關(guān)于shell的幾個(gè)不為人知卻十分有用的命令分享
這篇文章主要介紹了關(guān)于shell的幾個(gè)不為人知卻十分有用的命令,需要的朋友可以參考下2016-03-03Shell腳本實(shí)現(xiàn)的猜數(shù)字小游戲
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)的猜數(shù)字小游戲,本文的猜數(shù)字規(guī)則相對(duì)一般規(guī)則的猜數(shù)字可能難度要大不少,需要的朋友可以參考下2014-12-12