命令行参数到在mongodb上工作的javascript文件

command line argument to a javascript file that works on mongodb

本文关键字:工作 javascript 文件 mongodb 参数 命令行      更新时间:2023-09-26

我有一个javascript文件(.js)在MongoDB上工作。我运行.js文件为Mongo localhost:27017/dbname myjsfile.js .

我如何发送命令行参数,而运行这个JavaScript文件?我想发送数据库名称和集合名称作为命令行参数。

嗯,当你通过:

连接时,你已经在使用数据库了。
mongo localhost:27017/dbname

所以它现在在数据库"dbname"上。这一直延伸到db变量。它只是"当前"数据库对象的占位符。

这意味着你的"脚本"中的任何内容:

var results = db.collection.find().toArray();

示例正在使用您选择的数据库和您命名的集合。

需要更多吗?

db["mycollection"].find();

这只是JavaScript到shell。

如果你想把一个集合设置为一个变量,那么这样做:

mongo localhost/mydb --eval "var users = db.users" myfile.js

或者在JavaScript文件中这样做。你可以这样测试:

mongo localhost/mydb --eval "var users = db.users" --shell

在shell中,你现在有一个变量users,它是users集合的"别名"。

cli参数编号但是你可以读取json文件并在你的脚本中解析它。

// config.json - {"dbname":"dbname","collection":"mycollection"}
var args = JSON.parse(cat("config.json"));