仅删除 big acme.json 中的证书

仅删除 big acme.json 中的证书

我试图弄清楚如何格式化大 json 文件并仅删除格式如下的证书:

{
  "http-01": {
    "Account": {
      "Email": "[email protected]",
      "Registration": {
        "body": {
          "status": "valid",
          "contact": [
            "mailto:[email protected]"
          ]
        },
        "uri": "https://acme-v02.api.letsencrypt.org/acme/acct/110801506"
      },
      "PrivateKey": "long_key_string",
      "KeyType": "4096"
    },
    "Certificates": [
      {
        "domain": {
          "main": "domain.tld"
        },
        "certificate": "long_cert_string",
        "key": "long_key_String",
        "Store": "default"
      },
      {
        "domain": {
          "main": "domain2.tld"
        },
      .....

我尝试过cat acme.json |grep certificate | awk ' { print $1 $2 } ',但我正在努力如何仅选择文本"certificate":并在逗号之间编辑证书。

有没有优雅的方法可以用 bash/python 格式化它?我找不到办法。

答案1

查看 jq 及其手册页。这里有一些东西可以让你开始!

jq '."http-01"."Certificates"[]."certificate"="OMITTED"'

相关内容