Подтвердить что ты не робот

Запустить VS-код из WSL Bash

У меня установлено обновление для авторов. WSL работает. Я могу выполнить большинство .exe файлов, просто называя notepad.exe Но когда дело доходит до VS-кода.... Я не могу использовать команду code по умолчанию или вызов code.exe... Я также попробовал code и code.cmd. Почему VS Code не работает как другие программы? И есть ли способ включить команду code?

EDIT: теперь я получаю следующие ошибки:

me @mypc:/mnt/c/Users/me/Documents/project_folder $code. /mnt/c/Program Files (x86)/Microsoft VS Код /bin/code: строка 7: realpath: запятая nd не найден /mnt/c/Program Files (x86)/Microsoft VS Код /bin/code: строка 14:./Code.exe: Нет  такой файл или каталог

4b9b3361

Ответ 1

В обновлении Creators была установлена ​​функциональность взаимодействия. Однако, кажется, вам нужно установить realpath в WSL, чтобы распознать путь. Я не уверен, почему это так, но запуск sudo apt-get install realpath исправил его для меня!

РЕДАКТИРОВАТЬ: После обновления к обновлению Fall Creators запуск VSCode из WSL работает из коробки 🎉

Ответ 2

Вы всегда можете создать псевдоним в оболочке WSL Bash

alias code="/mnt/c/Program\ Files/Microsoft\ VS\ Code/Code.exe"

Если вы добавите это в свой файл .bashrc или .zshrc, он всегда будет доступен при запуске нового экземпляра вашей среды.

Ответ 3

ПРЕДУПРЕЖДЕНИЕ: Не изменяйте файлы Linux с помощью приложений и инструментов Windows

Обновление. Вышеуказанное не относится к версии 1903 или новее.

После всего этого я недавно испытал точно такое же поведение. Оказывается, во время первого удара по WSL с VS Code я также установил собственную копию из apt, которая переписала путь Windows.

Так что в WSL я удалил что-то вроде этого...

$ sudo apt remove code -y; sudo apt autoremove -y

Затем подтвердил, что путь был правильным...

$ which code
/mnt/c/Program Files/Microsoft VS Code/bin/code

Затем снова запустили WSL-терминал, и все снова было замечательно в мире кодирования. :)

Примечание: я полагаю, что другим вариантом было бы исправить путь в WSL, но без установленного пакета GUI он просто запустится в фоновом режиме и никогда не появится.