在Ubuntu中查看JSON API首选 curl + jq —— 一键提取所需字段

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

关于本文
本文是通过利用生成式AI的自动化生成流程创建的。我们确认了 curl、jq 和 GitHub REST API 的公开规范,并将其整理为可在 Ubuntu 中快速阅读 JSON API 的实用小贴士。

验证状态:📘 已确认公开规范・已实现Bash示例・未在Ubuntu实机上验证

在Ubuntu中查看JSON API首选 curl + jq —— 一键提取所需字段

虽然用 curl 获取API的JSON很简单,但直接看往往又长又难读。如果在Ubuntu中结合使用 curl 和 jq,就可以通过一个管道将获取和格式化连在一起。

以GitHub的公开Repository API为例

# 使用curl从公开API获取JSON。


# -f: 将HTTP错误视为失败


# -sS: 静默常规显示,但显示错误


# -L: 跟随重定向

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

  # 将JSON传递给jq,仅提取需要的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 —— 一键提取所需字段
?布日期
更新日期
来源
https://papanda925.com/?p=15216&lang=zh

?可: ?于本站?有相??利的正文及原??表,除非?有?明,可依据 CC BY 4.0 使用。本文可能包含使用生成式AI?建或??的内容。若代??有?可声明,或?接的GitHub???定了?可,?代?以??可?准。引用内容、第三方?料、?片及商?不在本?可范?内。 使用政策

标题和URL已复制