Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将变量从shell脚本传递到mongo javascript失败_Javascript_Mongodb_Shell - Fatal编程技术网

将变量从shell脚本传递到mongo javascript失败

将变量从shell脚本传递到mongo javascript失败,javascript,mongodb,shell,Javascript,Mongodb,Shell,我有一段代码,其中使用shell脚本命令运行mongo javascript: mongo --eval "var lower='30000';" <servername>:27017 < mongo.js; mongo--eval“var lower='30000';”:27017 cat mongo.js>>run.js mongo:27017

我有一段代码,其中使用shell脚本命令运行mongo javascript:

mongo --eval "var lower='30000';" <servername>:27017 < mongo.js;
mongo--eval“var lower='30000';”:27017
但是它没有运行mongo.js,而是连接到服务器并中断。 日志: MongoDB外壳版本3.6.3 连接到:mongodb://:27017/测试 MongoDB服务器版本:2.2.1 警告:shell和服务器版本不匹配

此警告不是问题,但它不会计算mongo.js脚本。你能看出我的命令有什么不对吗

我使用上面写的命令从一个shell脚本调用这个.js脚本。有什么方法可以将多个值传递给这些变量吗?

--eval
使mongo shell计算指定的javascript并忽略标准输入

提供您希望作为
--eval
参数或在文件中运行的所有代码,但不要同时使用这两种代码

要将变量传递给shell脚本,请创建一个新脚本:

echo "var lower='30000';" >run.js
cat mongo.js >>run.js
mongo <servername>:27017 < run.js;
run.js
echo“var lower='30000';”>
cat mongo.js>>run.js
mongo:27017
因此,如果我想将变量传递给mongo.js脚本,我该怎么做?在脚本中定义它们。我正在从shell脚本调用mongo.js脚本,将值传递给该shell脚本,它们也可以不同。因此,我们不能硬编码这些值。那么在这种情况下,我能做些什么呢?把这些要求添加到问题中。我已经添加了,你有什么建议吗?