最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux命令之jq命令處理JSON數(shù)據(jù)方式

 更新時間:2025年11月11日 11:11:43   作者:磐基Stack專業(yè)服務團隊  
jq是一個強大的命令行JSON處理器,支持過濾、映射、轉(zhuǎn)換等操作,它可以與管道結(jié)合使用,處理復雜的JSON數(shù)據(jù),JSON是一種輕量級的數(shù)據(jù)交換格式,支持對象、數(shù)組、字符串、數(shù)字等數(shù)據(jù)類型,jq通過命令行選項和過濾器來操作JSON數(shù)據(jù),提供豐富的功能和靈活的語法

一、jq簡介

jq是一個出色的命令行針對JSON的處理器,提供了用于查詢、操作和使用JSON文件的大量功能,且作為一個命令行工具,可配合管道使用腳本處理JSON

jq可以對json數(shù)據(jù)進行分片、過濾、映射、轉(zhuǎn)換和sed、awk、grep等命令一樣,可以輕松地把玩文本

jq是用C編寫,沒有運行時依賴,所以可以運行在任何系統(tǒng)上

二、安裝jq命令

# yum -y install jq

三、jq命令詳解

jq [options] filter [files]

options

--version:輸出jq的版本信息
--slurp/-s:讀入整個輸入流到一個數(shù)組
--raw-input/-R:不作為JSON解析,將每一行的文本作為字符串輸出到屏幕
--null-input/-n:不讀取任何輸入,過濾器運行使用null作為輸入,一般用作從頭構(gòu)建JSON數(shù)據(jù)
--compact-output/-c:使輸出緊湊,而不是把每一個JSON對象輸出在一行
--colour-output/-C:打開顏色顯示
--monochrome-output/-M:關(guān)閉顏色顯示
--ascii-output/-a:指定輸出格式為ASCII
-raw-output/-r:如果過濾的結(jié)果是一個字符串,那么直接寫到標準輸出(去掉字符串的引號)

filter

.:默認輸出
.foo:輸出指定屬性,foo代表屬性
.[foo]:輸出指定數(shù)組元素,foo代表數(shù)組下標
.[]:輸出指定數(shù)組中全部元素
,:指定多個屬性作為過濾條件時用逗號分隔
|:將指定的數(shù)組元素中的某個屬性作為過濾條件

files

JOSN格式文件

JSON數(shù)據(jù)類型

數(shù)據(jù)結(jié)構(gòu):object–>‘{}’、array–>‘[]’

基本類型:string、number、true、false、null -->6種

后續(xù):null和空串的區(qū)別

一個花括號{}代表一個對象–>‘object’

  • 特點:里面的元素必須是’key:value’以’,'隔開

  • 補充:對象是一個無序的’key/value’集合

一個方括號[]代表一個數(shù)組–>‘array’

  • 特點:數(shù)組是值’的有序集合,值之間以’,'分割

  • 補充:值可以是"雙引號"包括的string、number、true、false、null、object、arrary

  • 理解:‘value’是廣義上的單個元素,可以通過{}、’[]'嵌套來實現(xiàn)復雜的數(shù)據(jù)結(jié)構(gòu)

  • json僅支持’UTF-8’編碼且不支持注釋

JSON基礎

  • key:一般是’string’類型,用"雙引號"
  • 強調(diào):不是單引號
  • 補充:雙引號包括的字符串能解析"\t、\n"等符號
  • value:任何基本類型或數(shù)據(jù)結(jié)構(gòu)
  • 細節(jié):最后一個不要加逗號加了會出錯

例:

如果只想訪問單個屬性并將其打印輸出,可以使用.字段運算符

例如要訪問工人的屬性可以使用以下命令

使用.字段運算符訪問屬性中存在的項目

使用.[ ]運算符訪問和輸出JSON文件中數(shù)組中存在的元素

使用下標索引定位輸出特定的數(shù)組

使用.字段運算符訪問數(shù)組中存在的屬性,例如訪問第三個數(shù)組中的name屬性

訪問數(shù)組中所有名稱屬性

使用-s把輸入流數(shù)據(jù)放到一個數(shù)組[ ]內(nèi)

使用-r將輸出結(jié)果去掉雙引號

數(shù)據(jù)重組成數(shù)組

數(shù)據(jù)重組成對象

管道過濾重組成新對象

篩選

計算

數(shù)組中每個鍵進行映射并做數(shù)值計算加2

刪除json鍵

jq支持從JSON對象中刪除鍵,刪除后輸出就不包含刪除key的JSON對象。刪除鍵使用del()函數(shù)

函數(shù)length

  • 數(shù)字:返回數(shù)字值
  • 字符串:返回字符串長度
  • 數(shù)組:返回數(shù)組長度
  • map:返回元素個數(shù)

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Linux獲取線程的PID(TID、LWP)的幾種方式

    詳解Linux獲取線程的PID(TID、LWP)的幾種方式

    這篇文章主要介紹了詳解Linux獲取線程的PID(TID、LWP)的幾種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-05-05
  • 總結(jié)Linux 6種日志查看方法

    總結(jié)Linux 6種日志查看方法

    在本篇文章里小編給大家整理的是關(guān)于Linux 6種日志查看方法,有需要的朋友們可以學習下。
    2020-02-02
  • linux下修改文件權(quán)限chmod命令詳細解析

    linux下修改文件權(quán)限chmod命令詳細解析

    大家好,本篇文章主要講的是linux下修改文件權(quán)限chmod命令詳細解析,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • 詳解Linux用戶態(tài)與內(nèi)核態(tài)通信的幾種方式

    詳解Linux用戶態(tài)與內(nèi)核態(tài)通信的幾種方式

    這篇文章主要介紹了詳解Linux用戶態(tài)與內(nèi)核態(tài)通信的幾種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-06-06
  • Linux中Homebrew的正確使用方法

    Linux中Homebrew的正確使用方法

    這篇文章主要給大家介紹了關(guān)于Linux中Homebrew的正確使用方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Linux系統(tǒng)具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-09-09
  • 淺談Linux vfork與fork簡單對比分析

    淺談Linux vfork與fork簡單對比分析

    本篇文章主要介紹了淺談Linux vfork與fork簡單對比分析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • linux配置主機名詳細介紹

    linux配置主機名詳細介紹

    大家好,本篇文章主要講的是linux配置主機名詳細介紹,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下哦,方便下次瀏覽
    2021-11-11
  • Ubuntu16.04安裝Jenkins的方法圖文詳解

    Ubuntu16.04安裝Jenkins的方法圖文詳解

    這篇文章主要介紹了Ubuntu16.04安裝Jenkins,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • Linux系統(tǒng)利用cp命令實現(xiàn)強制覆蓋功能的方法

    Linux系統(tǒng)利用cp命令實現(xiàn)強制覆蓋功能的方法

    cp命令是我日常學習中經(jīng)常會遇到的一個命令,下面這篇文章主要給大家介紹了關(guān)于Linux系統(tǒng)利用cp命令實現(xiàn)強制覆蓋功能的方法,并且給大家簡單的介紹了cp命令的基礎知識,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。
    2017-11-11
  • Linux?服務器上配置?XFCE?桌面以實現(xiàn)遠程登錄的方法

    Linux?服務器上配置?XFCE?桌面以實現(xiàn)遠程登錄的方法

    本文介紹了在Linux服務器上配置XFCE桌面和XRDP服務,以實現(xiàn)遠程登錄的方法,本文分步驟以常見的?Ubuntu/Debian?系發(fā)行版為例給大家詳細講解,感興趣的朋友跟隨小編一起看看吧
    2026-04-04

最新評論

浮梁县| 富顺县| 丰顺县| 亚东县| 内黄县| 吉林市| 海伦市| 凤城市| 尼勒克县| 郴州市| 颍上县| 奉新县| 繁峙县| 剑阁县| 郸城县| 五莲县| 福安市| 武强县| 永善县| 顺昌县| 天峨县| 峨边| 芦山县| 苗栗县| 永安市| 兴仁县| 高碑店市| 长丰县| 栾川县| 札达县| 茶陵县| 乌兰察布市| 德令哈市| 屯门区| 车致| 福海县| 井陉县| 夏津县| 固安县| 轮台县| 定襄县|