mongodb - mongo shell 是否支持 vi 编辑?

标签 mongodb

我需要在我的 mongodb 上执行一些非常繁琐的命令行操作。有没有人试过将 shell 编辑设置为 vi? 如果我可以搜索我的命令历史记录并更改/替换,将会非常有用。

最佳答案

您可以设置 EDITOR指向 vi/vim 的环境变量,MongoDB 将在您发出 edit 时使用它shell 命令,或者您可以使用相同的 EDITOR javascript 中的变量覆盖环境值。因此,您可以将设置添加到您的 .mongorc.js 文件以确保每次都按照您的意愿进行设置,无需人工干预。

示例来自 mongo外壳:

> EDITOR='/usr/bin/vim'
/usr/bin/vim
> db
test
> edit db

如下所示为我启动了 vim(为简洁起见,缩写输出):

  1 test
~                                                                               
~                                                                               
~                                                                               
"/tmp/mongo_edit1449005704.js" [noeol] 1L, 4C

就您的命令历史而言,它保存在文件 ~/.dbshell 中(只要你使用的是比 2.2.0 更新的东西)并且可以直接编辑。

注意事项:您可以使用Ctrl-r在命令行上反向搜索和编辑(再次点击 Ctrl-r 向后进行一场比赛,Ctrl-s 继续前进等),就像在现代 BASH shell 中一样。有关键盘快捷键的完整列表,请查看 here .

关于mongodb - mongo shell 是否支持 vi 编辑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34030169/

相关文章:

从 JSON 导出插入时出现 php Mongodb "$oid is not valid for storage"错误

mysql - 我应该选择 MySQL 还是 MongoDB 来进行此设计

mongodb - 如何在 mongodb 的正则表达式 $match 中使用来自聚合的字段?

node.js - 在nodejs中回调内部回调?

MongoDB:如何将两个集合/数据库合并为一个?

javascript - 条件为 $sum 的 MongoDB 组聚合

django - 使用 Django(Djongo) 从 MongoDB 现有数据库中提取数据

mongodb - Mongoose 使用 id() 方法未找到匹配文档。异步删除请求导致的错误

mongodb - 查找具有最接近整数值的文档

Mongodb 缓慢更新循环