如何将特定字符串值作为位置参数传递给jq参数

时间:2017-12-20 07:51:35

标签: json bash ssh jq

我正在尝试编写一个简单的bash脚本,该脚本将管道jq更改键值,将密钥的value设置为我传递给bash脚本的新密钥。

我已经关闭了更改值的管道,我运行jq '.key = "newVal"'<config.json | sponge config.json

这适用于更改我想要的所有值,除了我想自动化它,以便我可以将我想要更改的值传递给bash脚本,然后将newVal替换为上面的代码中的confMizerFinal(){ status=$1; minPath=$2; minOps=$3; jq '.status = "'$status''<config.json | sponge config.json; cat config.json; }

我的尝试是这样的:

'$status'

(我只包含一个jq管道以便于阅读,当然我会为每个newVal1设置一个...我想设置。问题实际上是将它传递给值,在这种情况下,既不遗憾的是"$status"或{{1}}。我可能过于简单化了,我不能只将位置参数值传递给JSON中的.key吗?

非常感谢所有帮助,这个网站有助于提升我对bash的了解。

0 个答案:

没有答案