资讯专栏INFORMATION COLUMN

(翻译) MongoDB(20)配置 mongo Shell

yanest / 3398人阅读

摘要:自定义提示你可以通过在中设置变量来修改提示的内容变量可以保存字符串以及代码如果包含返回字符串的函数可以在每个提示中显式动态信息你可以在文件中添加提示的逻辑以便在你每次启动的时候进行提示自定义提示去显示操作的数量例如创建一个在当前会话中显示带

自定义提示

你可以通过在 mongo shell 中设置变量 prompt 来修改提示的内容. prompt 变量可以保存字符串以及 JavaScript 代码. 如果 prompt 包含返回字符串的函数, mongo 可以在每个提示中显式动态信息.

你可以在 .mongorc.js 文件中添加提示的逻辑以便在你每次启动 mongo shell 的时候进行提示.

自定义提示去显示操作的数量

例如, 创建一个在当前会话中显示带有操作执行数量的 mongo shell 提示, 在 mongo shell 中定义下面的变量:

cmdCount = 1;

prompt = function() {
    return (cmdCount++) + "> ";
}

然后提示将会类似以下内容:

1>
2>
3> 
自定义提示显示数据库名和主机名

@$ 的形式创建 mongo shell 提示符, 定义以下变量:

host = db.serverStatus().host;

prompt = function() {
    return db+"@"+host+"$ ";
}

然后提示将会类似以下内容:

test@myHost1$
自定义提示运行时间和文档数量

创建包含系统运行时间和当前数据库的文档数量的 mongo shell 提示, 在 mongo shell 中定义下面的 prompt 变量:

prompt = function() {
    return "Uptime:"+db.serverStatus().uptime+" Documents:"+db.stats().objects+" > ";
}

然后提示将会类似以下内容:

Uptime:5897 Documents:6 >
mongo shell 中使用外部编辑器

在启动 mongo shell 之前, 你可以设置 EDITOR 环境变量以便于在 mongo shell 中使用你自己的编辑器.

export EDITOR=vim
mongo

进入 mongo shell, 你就可以通过输入 edit 或者 edit , 使用指定的编辑器进行编辑, 如下所示:

定义一个函数 myFunction:

function myFunction () { }

使用你的编辑器编辑函数:

edit myFunction

这个命令应该会打开 vim 编辑会话. 当编辑结束, 保存并对退出 vim 编辑会话.

在 mongo shell, 输入 myFunction 来查看定义的函数.

myFunction

结果应该是你保存编辑的修改:

function myFunction() {
    print("This was edited");
}

注意:
由于 mongo shell 可以在外部编辑器解释编辑的代码, 所以可以修改函数中的代码, 这个取决于 JavaScript 编译器. 对于 mongo 可以将1+1转化为2或者删除评论. 实际的代码仅仅影响代码的外观, 并且将根据所使用的JavaScript版本而变化, 但不会影响代码的语义.

改变 mongo Shell 批处理大小

db.collection.find() 是从一个集合中检索文档的 JavaScript 方法. db.collection.find() 方法返回一个游标到结果. 然而, 在 mongo shell, 如果返回的游标没有分配给使用 var 关键字定义的变量. 然后游标会自动迭代20次, 以便输出匹配查询的前20个文档. mongo shell 会提示 Type it 再迭代20次.

你可以设置 DBQuery.shellBatchSize 属性去改变默认值是20的文档数量. 在下面的示例将其设置为10:

DBQuery.shellBatchSize = 10;

下一章: https://segmentfault.com/a/11...
本文地址: https://docs.mongodb.com/manu...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/18916.html

相关文章

  • (翻译) MongoDB(19) mongo Shell

    摘要:概述是的交互式接口你可以使用查询和更新数据以及执行管理操作是发行版的一个组件一旦你已经安装并且启动了连接到你运行的实例在手册的大部分示例都是使用然而许多驱动程序为提供了类似的接口启动重要在尝试运行之前确保正在运行启动并使用默认端口连接到本地 概述 mongo shell 是 MongoDB的交互式 JavaScript 接口. 你可以使用 mongo shell 查询和更新数据以及执行...

    张率功 评论0 收藏0
  • (翻译) MongoDB(12) 在 Amazon Linux 上安装MongoDB社区版

    摘要:概述使用这个教程在使用软件包安装社区版本安装教程仅支持位操作系统详细信息请参阅平台支持软件包在自己的存储库中提供官方支持软件包此存储库包含以下软件包软件名简介一个元软件包将自动安装下面列出的四个组件包包含守护程序和关联配置和初始化脚本 概述 使用这个教程在 Amazon Linux 使用 .rpm 软件包安装 MongoDB 社区版. 本安装教程仅支持64位操作系统. 详细信息请参阅平...

    gself 评论0 收藏0
  • (翻译) MongoDB(14) 在 Debian 上安装MongoDB社区版

    摘要:概述使用这个教程在或者使用软件包安装社区版虽然包含自己的软件包但官方的社区版包通常是最新的本安装教程仅支持位操作系统详细信息请参阅平台支持这些软件包可以与其它版本一起工作。 概述 使用这个教程在 Debian 7 Wheezy 或者 Debian 8 Jessie 使用 .deb 软件包安装 MongoDB 社区版. 虽然 Debian 包含自己的 MongoDB 软件包, 但官方的 ...

    gaara 评论0 收藏0
  • (翻译) MongoDB(11) 在 SUSE 上安装MongoDB社区版

    摘要:概述使用这个教程在和使用软件包安装社区版虽然发行版包含自己的软件包官方的社区版包通常是最新的平台支持本安装教程仅支持位操作系统详细信息请参阅平台支持软件包在自己的存储库中提供官方支持软件包此存储库包含以下软件包软件名简介一个元软件包将自动 概述 使用这个教程在 SUSE Linux 11 和 12 使用 .rpm 软件包安装 MongoDB 社区版. 虽然 SUSE 发行版包含自己的 ...

    zone 评论0 收藏0
  • (翻译) MongoDB(10) 在 Red Hat 企业版或者 Centos Linux 上安装M

    摘要:概述使用这个教程在企业版或者使用软件包安装社区版虽然一些发行版包含自己的软件包官方的社区版包通常是最新的平台支持本安装教程仅支持位操作系统详细信息请参阅平台支持不建议对企业版的支持软件包在自己的存储库中提供官方支持软件包此存储库包含以下软件 概述 使用这个教程在 Red Hat 企业版 Linux 或者 CentOS6/7 Linux 使用 .rpm 软件包安装 MongoDB 社区版...

    cartoon 评论0 收藏0

发表评论

0条评论

yanest

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<