jq

谁的小流浪發表於2024-09-05

  jq : 輕量級的命令列JSON處理器

  在Linux系統中,有一個輕量級的命令列JSON處理器jq。jq工具可以幫助使用者輕鬆處理JSON格式的資料,它可以從標準輸入讀取JSON資料,也可以從檔案中讀取。jq支援各種查詢和過濾操作,如選擇、過濾、轉換、排序和格式化等,是處理JSON資料的強大工具。

  jq特點:

  1. 快速和高效:jq使用C語言編寫,處理JSON資料非常快速和高效。
  2. 靈活和強大:jq具有豐富的功能和靈活的語法,能夠處理複雜的JSON資料結構和進行高階的JSON資料操作。
  3. 命令列工具:jq是一個命令列工具,可從終端中直接呼叫,方便快捷。
  4. 跨平臺:jq可在多種作業系統(包括Unix/Linux、Windows和macOS)上使用。
  5. 開源:jq是一個開源工具,使用者可自由修改和分發。
  6. 支援管道:jq支援從一個命令輸出管道到另一個命令作為輸入,使得資料處理更加靈活和高效。

  jq安裝:

  1. 線上安裝:
    • 對於基於Red Hat的系統(如CentOS),可以使用yum命令安裝:sudo yum install jq。但需要注意的是,可能需要先安裝EPEL源。
    • 對於基於Debian的系統(如Ubuntu),可以使用apt命令安裝:sudo apt install jq
  2. 離線安裝:
    • 可以從jq的GitHub釋出頁面下載預編譯的二進位制檔案,然後將其放置到系統的PATH路徑下,並設定可執行許可權。

  jq的基本使用:

  jq的基本使用包括查詢JSON資料、過濾資料、格式化輸出等。以下是一些基本示例:

  • 顯示JSON檔案的所有key:可以使用jq keys命令。
  • 顯示key對應的值:可以使用jq '.key_name'命令,其中key_name是你要查詢的key的名稱。
  • 查詢JSON檔案:可以使用jq 'filter' file.json命令,其中filter是jq過濾器表示式,file.json是包含JSON資料的檔名。
  • 格式化輸出:jq預設會以緊湊的格式輸出JSON資料,但可以使用-c(壓縮輸出)或-P(美化輸出)選項來控制輸出格式。

  jq的過濾器表示式非常靈活,支援使用點號(.)訪問JSON物件的屬性,使用方括號([])訪問JSON陣列的元素,以及使用各種內建函式和運算子進行復雜的資料處理。

相關文章