小编CaT*_*aTx的帖子

如何使用JQ将键值对添加到JSON文件中?

我有以下 JSON 文件,位于/tmp/target.json

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

我想添加一个新的键值对,如下所示:

{
  "compileOnSave": false,
  "compilerOptions": {
    "skipLibCheck": true,
    "baseUrl": "./",
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

我使用以下命令但它不起作用:

jq --argjson addobj '{"skipLibCheck": "true"}' '
  .compilerOptions{} |= $addobj
' /tmp/target.json
Run Code Online (Sandbox Code Playgroud)

我给了我这个错误:

jq: error: syntax error, unexpected '{', expecting $end (Unix shell quoting issues?) at <top-level>, line 2:
  .compilerOptions{} |= $addobj                  
jq: 1 compile error
Run Code Online (Sandbox Code Playgroud)

我做错了什么?我怎样才能让它按预期工作?

json jq

5
推荐指数
2
解决办法
4790
查看次数

标签 统计

jq ×1

json ×1