在使用 jq
更新 JSON 文档中的单个值时,您可以使用 jq
的函数和过滤器来精确地定位和修改您需要更新的值。jq
是一个强大的命令行 JSON 处理器,它允许您以非常灵活的方式读取和更新 JSON 数据。
下面是一个具体的例子,说明如何使用 jq
来更新 JSON 文档中的单个值:
假设我们有以下 JSON 文件(data.json
):
json{ "name": "张三", "age": 30, "city": "北京" }
现在,我们想要更新 age
的值从 30 改为 31。使用 jq
,您可以通过以下命令来实现:
bashjq '.age = 31' data.json
这个命令将会输出更新后的 JSON:
json{ "name": "张三", "age": 31, "city": "北京" }
如果您想要将结果保存回原始文件,可以使用重定向或者 jq
的 -r
(raw output)选项,配合 shell 命令来实现。例如:
bashjq '.age = 31' data.json > temp.json && mv temp.json data.json
或者使用 sponge
从更多实用程序包:
bashjq '.age = 31' data.json | sponge data.json
通过这种方式,您可以灵活地更新 JSON 文档中的任何值,而无需编写复杂的脚本或手动编辑文件。
2024年8月15日 12:01 回复