【问题标题】:jq to diff json in bashjq 在 bash 中区分 json
【发布时间】:2019-02-28 12:47:33
【问题描述】:

我有 2 个来自 rest api 的 json 对象。我想比较它们是否是同一个对象。 对象A:

{
  "type": {
    "S": "equal"
  },
  "preFilter": {
    "BOOL": true
  }
}

对象B:

{
  "preFilter": {
    "BOOL": true
  },
  "type": {
    "S": "equal"
  }
}

它们是相同的,但 md5sum 会将它们视为不同的。我尝试将它们插入到 2 个不同的文件中,并使用建议的东西比较文件 here: 但我想知道是否可以即时使用 jq 来比较变量。

我一直在努力改变

--argfile a a.json

--arg a $a

(作为 $a 一个 json 字符串)没有运气。知道如何处理字符串而不是文件吗?

【问题讨论】:

标签: json diff jq


【解决方案1】:

使用--argjson 命令行选项可能是最简单的,例如

jq -n --argjson a "$a" --argjson b "$b" '$a == $b'

当然还有其他选择,例如使用jq -s ...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-16
    • 1970-01-01
    相关资源
    最近更新 更多