【发布时间】:2020-04-17 10:31:33
【问题描述】:
我有一个想要操作的 json 文件;但我似乎无法根据需要更改数据。
如果我执行 1;返回为“true”,因为文件夹已暂停。
1: jq '.folders[] | select(.label=='\"$folder\"') | .paused' "$f"
如果我执行 2;单条记录被选中,“true”替换为“false”。
2: jq '.folders[] | select(.label=='\"$folder\"') .paused = false' "$f"
如果我执行 3;返回整个文件,但没有进行任何更改。
3: jq 'if (.folders[] | .label == '\"$folder\"') then .paused = false else . end' "$f"
我希望将整个文件与所做的更改一起返回,以便我可以将其发回以更新我尝试更改的配置。
我在这里做错了什么?
【问题讨论】:
-
你能提供一个json的例子吗?
标签: json bash jq edit in-place