You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Shell和jq从指定JSON中提取title与pr字段值

使用Shell和jq提取指定字段值

给定的JSON数据如下:

[
  {
    "name": "pr",
    "value": "2"
  },
  {
    "name": "title",
    "value": "pipeline-pr-test"
  },
  {
    "name": "headhhf",
    "value": "60dd35gt6"
  },
  {
    "name": "base",
    "value": "air"
  },
  {
    "name": "basha",
    "value": "7yhfr7e85a0cc"
  }
]

提取单个字段值

如果只想提取name为pr的value,执行以下命令:

jq '.[] | select(.name == "pr") | .value' input.json

输出结果:

"2"

提取name为title的value,执行:

jq '.[] | select(.name == "title") | .value' input.json

输出结果:

"pipeline-pr-test"

一次性提取两个字段

若要同时获取两个字段并整理成键值对输出:

jq 'from_entries | {pr, title}' input.json

输出结果:

{
  "pr": "2",
  "title": "pipeline-pr-test"
}

也可以直接输出两个值的列表:

jq '.[] | select(.name == "pr" or .name == "title") | .value' input.json

输出结果:

"2"
"pipeline-pr-test"

从管道输入数据处理

如果JSON数据来自管道传递(比如其他命令的输出),可这样处理:

cat input.json | jq '.[] | select(.name == "pr" or .name == "title") | .value'

内容的提问来源于stack exchange,提问作者Ankur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 11:45:38