【问题标题】:How to move value of JSON element into subelement using bash如何使用 bash 将 JSON 元素的值移动到子元素中
【发布时间】:2018-02-16 12:22:33
【问题描述】:

我有一个有趣的问题。 我有这份文件:

{
  "correlationId": "6298865a73b477106c98d021",
  "leg": 0,
  "tag": "sent",
  "offset": 322858,
  "len": 178,
  "prev": {
    "page": {
      "file": 10352,
      "page": 2
    },
    "record": 911
  },
  "data": "HTTP/1.1 403 Forbidden\r\nDate: Fri, 16 Feb 2018 08:37:54 GMT\r\nServer: \r\nConnection: close\r\nX-CorrelationID: Id-6298865a73b477106c98d021 0\r\nContent-Type: text/html\r\n\r\nAccess Denied"
}

但是因为“数据”元素也可以包含常规 JSON 对象,所以我想移动值

"HTTP/1.1 403 Forbidden\r\n日期:2018 年 2 月 16 日星期五 08:37:54 GMT\r\n服务器: \r\n连接: 关闭\r\nX-CorrelationID: Id-6298865a73b477106c98d021 0\r\n内容类型:文本/html\r\n\r\n访问 拒绝”

进入"data": { "message": "HTTP/1.1 403 Forbidden\r\nDate: Fri, 16 Feb 2018 08:37:54 GMT\r\nServer: \r\nConnection: close\r\nX-CorrelationID: Id-6298865a73b477106c98d021 0\r\nContent-Type: text/html\r\n\r\nAccess Denied"} 结构。

我试图用 jq 找到一个解决方案,但我没有找到任何可以移动它的过滤器。

有什么想法吗?

【问题讨论】:

    标签: json posix jq


    【解决方案1】:

    看来你想要:

    .data |= { message: .}
    

    【讨论】:

      猜你喜欢
      • 2016-12-07
      • 2019-09-18
      • 1970-01-01
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      • 1970-01-01
      相关资源
      最近更新 更多