簡體   English   中英

將變量從 shell 腳本傳遞給 mongo javascript 失敗

[英]Passing variable from shell script to mongo javascript fails

我有一個代碼,我在其中使用 shell 腳本命令運行 mongo javascript:

mongo --eval "var lower='30000';" <servername>:27017 < mongo.js;

但它沒有運行 mongo.js,而是連接到服務器並中斷。 日志:MongoDB shell 版本 v3.6.3 連接到:mongodb://:27017/test 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;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM