如何 运行 mongo shell 中的本地脚本 - 解决方案 load()
How to run a local script in mongo shell - Solution load()
我认为这是一个非常基本的问题,但我被卡住了。我通过 MongoDB shell 连接到远程 mongo 实例 (mLab)。这对于单线来说很好,但现在我想 运行 更大的命令,但经常,因此需要从已经连接的 shell 中执行。
如何从 mongo shell 运行 我的本地 script.js 并在 shell 中获取输出,就好像我只是运行像往常一样单排吗?
我希望 load("script.js") 能做到,但它只是 returns 'true' 而不管内容。
执行 JavaScript 文件
可以给mongoshell指定.js文件,mongo会直接执行JavaScript。考虑以下示例:
mongo localhost:27017/test myjsfile.js
将 Localhost URL 替换为您的 Mlab URL
或者如果您在 shell 中,您可以使用 load() 函数从 mongo shell 中执行 .js 文件,如下所示:
load("myjstest.js")
参考这个link
修改脚本文件以打印结果游标中的所有项目,使用以下习惯用法:
cursor = db.collection.find();
while ( cursor.hasNext() ) {
printjson( cursor.next() );
}
我认为这是一个非常基本的问题,但我被卡住了。我通过 MongoDB shell 连接到远程 mongo 实例 (mLab)。这对于单线来说很好,但现在我想 运行 更大的命令,但经常,因此需要从已经连接的 shell 中执行。
如何从 mongo shell 运行 我的本地 script.js 并在 shell 中获取输出,就好像我只是运行像往常一样单排吗?
我希望 load("script.js") 能做到,但它只是 returns 'true' 而不管内容。
执行 JavaScript 文件
可以给mongoshell指定.js文件,mongo会直接执行JavaScript。考虑以下示例:
mongo localhost:27017/test myjsfile.js
将 Localhost URL 替换为您的 Mlab URL
或者如果您在 shell 中,您可以使用 load() 函数从 mongo shell 中执行 .js 文件,如下所示:
load("myjstest.js")
参考这个link
修改脚本文件以打印结果游标中的所有项目,使用以下习惯用法:
cursor = db.collection.find();
while ( cursor.hasNext() ) {
printjson( cursor.next() );
}