UbuntuでJSON APIを見るならcurl + jq ― 必要な項目だけ1発で抜く

Linux・CLI・DevOpsカテゴリを表すパンダのイラスト Linux・CLI・DevOps

この記事について
この記事は、生成AIを活用した自動生成フローで作成しています。curl、jq、GitHub REST APIの公開仕様を確認し、UbuntuでJSON APIをすぐ読めるTIPSとして整理しています。

検証ステータス:📘 公開仕様確認済み・Bashサンプル実装済み・対象Ubuntu実機未確認

UbuntuでJSON APIを見るならcurl + jq ― 必要な項目だけ1発で抜く

APIのJSONを curl で取るところまでは簡単でも、そのままだと長くて読みにくいことがあります。Ubuntuなら curl と jq を組み合わせると、取得と整形を1本のパイプでつなげられます。

GitHubの公開Repository APIを例にする

# curlで公開APIからJSONを取得します。


# -f: HTTPエラーを失敗扱いにする


# -sS: 通常表示は静かにしつつ、エラーは表示する


# -L: リダイレクトを追う

curl -fsSL "https://api.github.com/repos/papanda925/Daily-Code-Samples" |

  # jqへJSONを渡し、必要な5項目だけ取り出します。

  jq '{
    full_name,
    visibility,
    default_branch,
    language,
    updated_at
  }'

レスポンス全体ではなく、確認したい5項目だけが表示されます。

-f -sS -L は何のため?

  • -f: HTTPエラーを成功扱いにしにくくする

  • -sS: 通常の進捗表示は抑えつつ、エラーは表示する

  • -L: リダイレクトを追う

API確認では「404なのにJSONが返ったから処理が続いた」のような見落としを減らすため、終了コードも意識します。

jqを組み合わせると便利な例

配列なら .items[]、条件なら select(...)、必要項目だけなら {name, status} のように絞れます。巨大JSONを人間が目視するより、「見る項目を固定する」方が障害調査にも向いています。

flowchart LR
    A[curlで取得] --> B[JSON]
    B --> C[jqで抽出]
    C --> D[必要項目だけ表示]

jqが入っていないとき

sudo apt update
sudo apt install -y jq

本番サーバーでは、勝手にパッケージを追加せず運用ルールを確認してください。

GitHubサンプル

公式情報・一次情報

文書情報

記事タイトル
UbuntuでJSON APIを見るならcurl + jq ― 必要な項目だけ1発で抜く
作成日
更新日
Source URL
https://papanda925.com/?p=15189

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

タイトルとURLをコピーしました