在mongorc中设置mongodb编辑器path

我试图设置在Windows 8上的.mongorc.js MongoDB的崇高的文本编辑器的path,所以我把这一行添加到.mongorc.js …

EDITOR = "C:\\Program Files\\Sublime Text 3\sublime_text.exe"; 

当我从命令提示符启动mongo.exe,然后键入:

 > edit blah 

它返回:

 'C\Program' is not recognized as an internal or external command 

所以我尝试

 EDITOR = "C:\\Program\u0020Files\\Sublime\u0020Text\u00203\\sublime_text.exe"; 

乃至

 EDITOR = "C:\\Program%20Files\\Sublime%20Text%203\\sublime_text.exe"; 

我得到了

该系统找不到指定的path。

显然,路径不能包含空格。

最简单的解决方法是为文件夹使用生成的8.3名称,而不是使用空格的路径。

在命令提示符下,您将使用显示正常隐藏的8.3目录和文件名的/x开关:

 c: cd \ dir pro* /x 

应该返回这样的东西:

 Directory of C:\ 11/05/2013 07:19 PM <DIR> PROGRA~1 Program Files 11/05/2013 07:19 PM <DIR> PROGRA~2 Program Files (x86) 

如果你使用的是Sublime的64位版本,你可以选择PROGRA~1

更改到Program Files目录:

 cd Program Files 

然后,找到Sublime文件夹的8.3名称:

 C:\Program Files>dir Subl* /x Directory of C:\Program Files 09/08/2013 02:17 PM <DIR> SUBLIM~1 Sublime Text 2 

在我的系统上,它是SUBLIM~1 。 然后,更改EDITOR值,使用您系统中的值如下所示:

 EDITOR="C:\\PROGRA~1\\SUBLIM~1\\sublime_text.exe" 

你也可以创建一个连接点(没有空格),但是上面的技巧应该可以正常工作(我在我的机器上测试过,它能正常工作)。 使用Sublime的唯一问题我注意到,MongoDB控制台中的edit命令等待整个编辑器进程退出,所以你不能使用制表符。

您的编辑器名称中可以有空格,只需确保正确地转义所有内容即可。 我没有安装你的编辑器,所以我用了写字板。

 > EDITOR="\"C:\\Program Files\\Windows NT\\Accessories\\wordpad.exe\"" "C:\Program Files\Windows NT\Accessories\wordpad.exe" > edit a 

为我工作。 你需要把整个东西用引号引起来,然后在整个可执行文件中使用反斜杠和反斜杠。

您还可以确保编辑器的路径在默认/系统路径中,那么您只需将编辑器可执行文件的名称分配给EDITOR即可。