#68·gron

“ json” 以外的根对象

作者: bowman创建于 2019年11月7日更新于 2023年7月6日

哈罗 我有个小建议

我想有一个‘-v/-var'选项,设置根输出变量的名称:

回声“ [1, 2] ” 。
a = [;];
a [0]=1;
a [1]=2;

换成另一个Json文件的内容 因此在这种情况下,我会有一个复杂的 var 像'json [0].key1' 并替换 输入线为多出行。

(我可以想象只是把一个紧凑的单行块json作为一个值,但目前也不允许这样做. 可能还有其他办法解决这一问题)

这里有一个比较复杂的例子:

$头输入.json a.json b.json
* 输入。
[{"键1":"a","键2":123},{"键1":"b","键2":345}]

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}我很高兴见到你
{"id":"a","value":[1,2]}[1,2]]

贾森先生
{"id":"b","value":[3,4]} {.

以下是一条管道,该管道将"关键1"行进行Grep并用另一个文件中的内容来取而代之:

$gron 输入.json QQ perl - ple "if (/^ (.*key1) = "(.*?)"; $/; { $  = $ 2.json { s/^json/ 1/"; chomp}} QQGON - u jq - c
[{"键1":{"id":"a","值":[1,2]"键2":123},{"键1":{"id":"b","值":[3,4]}"键2":345}]

根据这项建议,可以放弃Sed:

gron 输入.json QQ perl - ple'if (/^ (. *key1) = "(.*?)"; $/) { $  = `gron -v 1美元 2.json'; chomp }} {|-u

谢谢