配置mongo Shell
在本页面
[success] Note
下面的文档是MongoDB服务器下载.中包含的
mongo
shell。有关新的MongoDB Shell ,mongosh的信息,请参考mongosh文档。要了解这两种shell的区别,请参阅Comparison of the mongo Shell and mongosh.
自定义提示
您可以通过在 mongo
shell中设置变量prompt来修改提示符的内容。prompt变量可以保存字符串和JavaScript代码。如果prompt包含一个返回字符串的函数,mongo
可以在每个提示符中显示动态信息。
您可以在.mongorc.js
文件中添加提示逻辑,以在每次启动mongo
shell时设置提示。
自定义提示以显示操作数
例如,要使用当前会话中发出的操作数创建mongo
shell提示,请在mongo
shell中定义以下变量:
提示将展示类似于以下内容:
自定义提示以显示数据库和主机名
要以<database> @ <hostname> $
的形式创建mongo
shell`提示,请定义以下变量:
提示将类似于以下内容:
自定义提示以显示时间和文档计数
要创建一个包含系统正常运行时间和当前数据库中文档数的mongo
shell提示,请在mongo
shell中定义以下提示变量:
提示符将类似于以下内容:
在mongo shell中使用外部编辑器
您可以通过在启动mongo
shell之前设置EDITOR
环境变量,这样就可以在 mongo
shell中使用自己的编辑器。
进入mongo
shell后,您可以通过输入
**edit <variable
>或edit <function
>**使用指定的编辑器进行编辑,如以下示例所示:
1.定义一个函数myFunction
:
2.使用编辑器编辑函数:
该命令将打开vim
编辑会话。 完成编辑后,保存并退出vim
编辑会话。
3.在mongo
shell中,键入myFunction
以查看函数定义:
展示的是已经保存编辑后的结果:
[success] Note
当mongo shell解释在外部编辑器中编辑的代码时,它可能会修改函数中的代码,具体取决于JavaScript编译器。 例如,mongo可以将1 + 1转换为2或删除注释。 实际更改仅影响代码的外观,并且会根据所使用的JavaScript版本而有所不同,但不会影响代码的语义。
改变mongo shell(batchSize)
db.collection.find()
方法是用于从集合中检索文档的JavaScript方法。db.collection.find()
方法将游标返回到结果。 但是,在mongo shell中,如果未使用var关键字将返回的游标分配给变量,则该游标会自动迭代最多20次,来打印与查询匹配的前20个文档。 mongo shell将提示 输入it
以使其再次迭代20次。 您可以设置DBQuery.shellBatchSize
属性,以更改文档数默认值20,如以下示例中将其设置为10:
译者:王恒 金江
校对:杨帅
最后更新于