我试图设置在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即可。