linux jq命令
linux系統下jq命令是什麼呢?下面是jq命令具體介紹:
1、jq命令簡介:
jq命令允許直接在命令列下對JSON進行操作,包括分片、過濾、轉換等
JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式。基於JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一個子集JSON 資料的書寫格式是: 名稱/物件。JSON的結構基於兩點
“名稱/值”的集合 ,在不同的語言中,它可以被理解為物件(object),記錄(record),結構(struct),字典(dictionary),雜湊表(hash table),鍵列表(keyed list)等 .值的有序列表 多數語言中被理解為陣列(array)
2、JSON的基礎結構:
物件是屬性、值的集合。一個物件開始與”{” ,結束於”}”。每一個屬性名和值間用”:”分隔。每個屬性間用”,”分隔。
值可以是字串,數字,邏輯值,陣列,物件,null。
數字:整數或浮點數
字串:在雙引號中
邏輯符:true和false
陣列:在方括號中
物件:在花括號中
null: 代表空
Ubuntu下的jq安裝
apt-get install jq
3、jq命令的格式:
jq [options] filter [files]
**options:**
--version:輸出jq的版本資訊並退出
--slurp/-s:讀入整個輸入流到一個數組。
--raw-input/-R:不作為JSON解析,將每一行的文字作為字串輸出到螢幕。
--null-input/ -n:不讀取任何輸入,過濾器執行使用null作為輸入。一般用作從頭構建JSON資料。
--compact-output /-c:使輸出緊湊,而不是把每一個JSON物件輸出在一行。
--colour-output / -C:開啟顏色顯示
--monochrome-output / -M:關閉顏色顯示
--ascii-output /-a:指定輸出格式為ASCII
-raw-output /-r :如果過濾的結果是一個字串,那麼直接寫到標準輸出(去掉字串的引號)
**filter:**
. : 預設輸出
.foo: 輸出指定屬性,foo代表屬性。
.[foo] :輸出指定陣列元素。foo代表陣列下標。
.[]:輸出指定陣列中全部元素
, :指定多個屬性作為過濾條件時,用逗號分隔
| : 將指定的陣列元素中的某個屬性作為過濾條件
**files:**
JOSN格式檔案。
以上就是小編今天的分享了,希望可以幫助到大家。