我需要通过命令行参数传递js变量。选项--eval做到了这一点。但它默认情况下也会将变量值打印到shell。我想跳过打印到shell的变量值。
例如: -
我在script.js中使用了“user_name”。
使用mongo传递值--eval =“user_name ='john'”script.js
但它不一定印刷价值
约翰
任何想法。
答案 0 :(得分:0)
有一个--quiet
标志 - 但是评估的项目仍然会打印到标准输出。
您可以通过管道传输到/ dev / null或文件来捕获标准输出,例如:
mongo --eval="user_name='john'" script.js > /dev/null
答案 1 :(得分:0)
对于此用例,您可以在声明中使用var
。这不会打印值:
mongo --eval="var user_name='john';" script.js