На работе существует политика безопасности предприятия, в которой всем исполняемым файлам разрешено работать только C:\Program Files
или C:\Program Files (x86)
.
В коде Visual Studio в 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 не нравится, когда вы избегаете символа пробела, и этот код дает мне ошибку 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?