我正在尝试将shell脚本中的变量传递给mongo(javascript)脚本,同时将其踢掉。我读到的一切都说你可以在命令行中使用--eval传递这些变量。这很好用,但输出总是打印我的第二个--eval变量打印出来......
Shell脚本
#!/bin/bash
foo = "10"
mongo --quiet --eval "start = '$foo'" mongoScript.js
输出
10
ID,Time,Local
035435406354,13:01:01,MST
035435406354,13:01:01,MST
问题是eval现在返回一个值,所以这会打印到我的输出。我该如何压制这个?
答案 0 :(得分:0)
在网上进行了足够的搜索之后,我发现如果我在--eval(var)中声明变量,它就不会在输出中打印变量的值。
<强>解决方案强>
#!/bin/bash
foo = "10"
mongo --quiet --eval "var start = '$foo'" mongoScript.js
这为我提供了预期的输出,但没有显示带有start
值的额外行<强>输出强>
ID,Time,Local
035435406354,13:01:01,MST
035435406354,13:01:01,MST