如何在Visual Studio Code中使用Cmder?

霍默斯普森

在工作中,有一项企业安全策略,其中所有可执行文件只允许用完C:\Program FilesC:\Program Files (x86)

在Visual Studio Code的中settings.json,使用以下设置:

{
    "terminal.integrated.shell.windows": "C:\\Windows\\Sysnative\\cmd.exe",
    "terminal.integrated.shellArgs.windows": [
        "/k C:\\Program Files (x86)\\Cmder\\vendor\\init.bat"
    ]
}

...在集成终端初始化时,我收到以下错误消息:

'C:\Program' is not recognized as an internal or external command, 
operable program or batch file.

由于Windows出色的文件/目录命名约定允许使用空格,因此很难指向其中一个Program File路径。

当您转义空格字符时,VSCode不喜欢它,并且此代码给了我error Invalid escape character in string当我尝试将属性更改为此:

{
    ...
    "terminal.integrated.shellArgs.windows": [
        "/k C:\\Program\ Files\ (x86)\\Cmder\\vendor\\init.bat"
    ]
}

...我收到以下错误消息:

'C:\ProgramFiles' is not recognized as an internal or external command,
operable program or batch file.

最后,尝试将路径用引号引起来,如下所示:

{
    ...
    "terminal.integrated.shellArgs.windows": [
        "/k \"C:\\Program Files (x86)\\Cmder\\vendor\\init.bat\""
    ]
}

...给我这个错误信息:

'\"C:\Program Files (x86)\Cmder\vendor\init.bat\""' is not recognized as an 
internal or external command,
operable program or batch file.

有什么方法可以将Cmder集成到VSCode中吗?

霍默斯普森

在互联网上寻找答案后,我找不到解决方案,但我想出了办法,并认为我可以将其发布在这里,以供其他人查看,因为我发现来自不同论坛的人有相同的问题,但是没有回答。

在Windows中,/Xdir命令有一个,指出:

  /X          This displays the short names generated for non-8dot3 file
              names.  The format is that of /N with the short name inserted
              before the long name. If no short name is present, blanks are
              displayed in its place.

因此,在dir /X执行命令将C:\显示以下内容:

C:\>dir /X
 Volume in drive C is OSDisk
 Volume Serial Number is XXXX-XXXX

 Directory of C:\

...
08/17/2017  08:02 PM    <DIR>          PROGRA~1     Program Files
08/09/2017  03:58 PM    <DIR>          PROGRA~2     Program Files (x86)
...

您可以使用目录简称PROGRA~2来代替Program Files (x86),并且在settings.jsonVS Code中具有以下设置

{
    "terminal.integrated.shell.windows": "C:\\Windows\\Sysnative\\cmd.exe",
    "terminal.integrated.shellArgs.windows": [
        "/k C:\\PROGRA~2\\Cmder\\vendor\\init.bat"
    ]
}

哪个可以在集成终端中成功加载Cmder:

Cmder的图像已成功加载到VS Code集成终端中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Visual Studio Code中使用Qt?

如何在Visual Studio Code中使用Delve调试器

如何在Visual Studio Code中使用Delve调试器进行远程调试

如何在Visual Studio 2017中使用Java

如何在Visual Studio Code vim扩展中使用vim(键绑定)

如何在Visual Studio 2010中使用Boost

如何在NTVS中使用nodemon(Visual Studio的节点工具)

如何在Visual Studio(C#)中使用WebView功能

如何在Visual Studio中使用Bower(从nuget安装)?

如何在Visual Studio的发布后事件中使用msbuild?

如何在C ++中使用julia语言(Visual Studio)

如何在Visual Studio Web表单中使用Google Maps?

如何在Visual Studio 2013中使用NuGet 3.0?

如何在Visual Studio中使用LibTooling / Clang?

如何在Visual Studio Code中使用Typescript进行TDD?

如何在Visual Studio 2017中使用Qt库?

如何在Visual Studio Code中使用全局gitignore?

如何在Ubuntu中使用Visual Studio Code编译C ++代码?

如何在Visual Studio Code中使用pip

如何在Visual Studio 2017中使用Jupyter Notebook?

如何在塔中使用Visual Studio作为合并工具

Mac:如何在Visual Studio Code的命令行中使用Python 3.7?

如何在Visual Studio Code中使用Flutter的Widget Inspector?

如何在Visual Studio Code中使用TypeScript和JavaScript禁用自动分号以进行自动导入?

如何在Visual Studio Code中使用Django Shell调试Django(逻辑)代码

如何在Visual Studio中使用IntelliCode?

如何在Visual Studio中使用PhoneGap

如何在Visual Studio中使用SSDT重命名表

如何在Visual Studio 2013中使用SSL