所以,我试图在Bash脚本中运行Python脚本。 Python脚本以JSON字符串的形式获取其中一个参数,如下所示:
'[{"CONFIG":"SomeConfigID"}]' //there are other members available but this is all I need.
我想从Bash脚本中传入一个变量作为JSON对象的成员。所以,这就是我在做的事情:
'[{"CONFIG":"${CONFIG}"}]'
但是,我发现Python脚本失败,因为它无法识别${CONFIG}
出于某种原因,Bash没有用变量的值替换该表达式。我不熟悉Bash,所以这可能只是我遗漏的一些明显的东西。有人可以帮忙吗?是否有其他方法来构造不会导致此问题的JSON字符串?
答案 0 :(得分:4)
为shell扩展获取正确的引用:
'[{"CONFIG":"'"${CONFIG}"'"}]'
由于shell变量不能用shell引用它来展开它们。
示例:强>
CONFIG=foo
echo '[{"CONFIG":"'"${CONFIG}"'"}]'
[{"CONFIG":"foo"}]