使用sed

时间:2018-04-13 09:12:21

标签: json bash sed

JSON的一个例子就像是

{"version":"0.5363"}

我需要能够为变量版本注入新值。我在stackoverflow上找到了一个解决方案:

echo '{"version":"0.5363"}' | sed 's/\({"version":"\)[^"]*\("}\)/\1newvalue\2/g'

但我想通过varable替换newvalue,即

echo '{"version":"0.5363"}' | sed 's/\({"version":"\)[^"]*\("}\)/\1$newvalue\2/g'

但是正在将字符串替换为

{"version":"$newvalue"}

上面的例子是一个例子。实际上我的JSON如下所示: "校验和":" sdkjjfj-shbdjfj23"

我想用另一个值替换校验和值。 如上所述,我用过: sed -i' s /(" checksum":")[^"] *(")/ \ 1 $ checksumVal \ 2 / g' new.json

new.json更新如下,但我想要该变量的值。 "校验和":" $ checksumVal",

任何帮助都将不胜感激。

0 个答案:

没有答案