ジェイソン。後ろに文を追加するには:[閉じる]

ジェイソン。後ろに文を追加するには:[閉じる]

以下は私のjsonファイルから抜粋したものです。

 },
   {
    "name": "asdasd",
    "script": "dsad.js",
    "merge_logs": ture,
    "error_file": "/ofghfghgfh.log",
    "out_file": "/fghgfhfgg",
    "cwd": "",
    "autorestart": true,
    "log_date_format"  : "YYYY-MM-DD HH:mm Z",
    "env": {
    "NODE_ENV": "desa",
    "KEY": "VtZOiz0Qc4afFs6j+h2r"
    }
  }]

「KEY」の後にフレーズを追加したいです。現在の値を変更してください。

「sed」を試しましたが、行末に追加しました。

 sed '/KEY/s/$/1234/g' .json

「-i」オプションを使用してファイルを直接変更する必要があります。

ベストアンサー1

sed操作に誤ったツールです。正しいツールの1つですjq

% 猫 wibble.json                               
[
  {
    "名前": "asdasd",
    "スクリプト": "dsad.js"
  },
  {
    "log_date_format": "YYYY-MM-DD HH:mm Z",
    "環境":{
            "NODE_ENV": "デサ",
            "キー": "VtZOiz0Qc4afFs6j+h2r"
    }
  }
]
% jq '.[1]."env"."KEY" = "1234"' wibble.json
[
  {
    "名前": "asdasd",
    "スクリプト": "dsad.js"
  },
  {
    "log_date_format": "YYYY-MM-DD HH:mm Z",
    "環境":{
      "NODE_ENV": "デサ",
      「キー」:「1234」
    }
  }
]
%

JSONが実際には無効であることがわかりました。

%jq.ortiga.json
解析エラー:行4、列23のテキストが正しくありません。
%

おすすめ記事