我有一个在MongoDB上工作的javascript文件( .js )。我以mongo localhost:27017/dbname myjsfile.js运行.js文件。
如何在运行此JavaScript文件时发送命令行参数?我希望将数据库名称和集合名称作为命令行参数发送。
发布于 2014-03-19 19:40:39
那么,当您通过以下方式进行连接时,您已经在设置正在使用的数据库:
mongo localhost:27017/dbname所以它现在在数据库"dbname“上。这将传递到db变量。它只是“当前”数据库对象的占位符。
这意味着你的“脚本”中的任何东西:
var results = db.collection.find().toArray();例如,使用您选择的数据库和您命名的集合。
还需要更多吗?这对以下对象有效:
db["mycollection"].find();这只是JavaScript的外壳。
如果你想将一个集合设置为一个变量,那么可以这样做:
mongo localhost/mydb --eval "var users = db.users" myfile.js或者在您的JavaScript文件中执行此操作。您可以通过以下方式进行测试:
mongo localhost/mydb --eval "var users = db.users" --shell在shell中,您现在有一个变量users,它是users集合的“别名”。
发布于 2014-03-19 19:58:26
cli参数编号。但是您可以读取json文件并在脚本中对其进行解析。
// config.json - {"dbname":"dbname","collection":"mycollection"}
var args = JSON.parse(cat("config.json"));https://stackoverflow.com/questions/22503984
复制相似问题