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

如何从JSON文件中同时提取指定字段并并排输出?

用jq同时提取JSON多字段并生成指定格式输出

原始JSON内容

{
  "requestData": {
    "username": "admin"
  },
  "eventTime": "2023-12-01T23:50:02.554+0000",
  "observer": {
    "id": "target"
  }
}

期望输出

"username": "admin","eventTime": "2023-12-01T23:50:02.554+0000"

实现命令

可以用两种方式实现:

方式一:直接字符串插值

cat filename | jq -r '"\"username\": \"\(.requestData.username)\",\"eventTime\": \"\(.eventTime)\""'
  • -r参数让jq输出原始字符串,避免额外的引号包裹。
  • 通过\(...)语法插入对应字段的值,手动构造目标格式的字符串。

方式二:构造临时对象后拼接

cat filename | jq -r '{"username": .requestData.username, "eventTime": .eventTime} | to_entries | map("\"\(.key)\": \"\(.value)\"") | join(",")'
  • 先创建只包含目标字段的临时对象,再用to_entries转成键值对数组。
  • 用map把每个键值对格式化为指定字符串,最后用join(",")拼接成一行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 21:32:45