我正在尝试编写一个简单的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的了解。