Mongo shell标签完成

时间:2013-04-17 09:00:22

标签: mongodb shell autocomplete tab-completion

我想知道是否可以在mongo shell中配置制表符完成的行为?我见过的两个行为是:

  1. 只要没有歧义,Tab键的第一次点击就会完成,第二次点击会显示可能的选项列表。
  2. 按Tab键可根据第一个选项完成完整表达。
  3. 我个人更喜欢第一种选择。我已经在不同的环境中看到了这两种行为(都是mongo版本2及以上版本),并且无法确定它是可配置的还是由环境引起的。

1 个答案:

答案 0 :(得分:3)

mongo shell自动完成行为肯定不是可配置选项。 shell编辑行为有一些差异,具体取决于您使用的MongoDB版本。

这些差异不仅包括自动完成,还包括行编辑,历史记录和键盘快捷键..但要确认您的自动完成观察结果:

  • MongoDB 1.8.x及更早版本的行为#1
  • 在MongoDB 2.0.x中,shell编辑库已从readline更改为linenoise(SERVER-2792)并导致一些更改,包括选项卡完成(行为#2)
  • 从MongoDB 2.2.x开始,原始的readline样式完成已经恢复(SERVER-3809)以及shell交互的其他改进(例如:SERVER-4321SERVER-3787, ..)。< / LI>

如果您更喜欢给定shell的行为,当然可以使用与您的MongoDB服务器版本不同的mongo shell版本。要利用所有服务器功能和记录的shell帮助程序,通常需要mongo shell版本,与mongod版本相比,它是相同或更新的主要版本。