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なら curljq を組み合わせると、取得と整形を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サンプル

公式情報・一次情報

ライセンス:本記事のテキスト/コードは特記なき限り CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。

コメント

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