从 WSL 启动 VS 代码 Bash
Launch VS Code from WSL Bash
我安装了创意者更新。 WSL 正在运行。我可以通过简单地调用 notepad.exe
来执行大多数 .exe 文件但是当涉及到 VS 代码时......我不能使用默认的 code
命令或调用 code.exe
... 我还尝试了 code
和 code.cmd
。为什么 VS Code 不像其他程序那样执行?有没有办法启用 code
命令?
编辑:我现在收到这些错误:
me@mypc:/mnt/c/Users/me/Documents/project_folder$ code .
/mnt/c/Program Files (x86)/Microsoft VS Code/bin/code: line 7: realpath: comma
nd not found
/mnt/c/Program Files (x86)/Microsoft VS Code/bin/code: line 14: ./Code.exe: No
such file or directory
Creators 更新 安装了互操作功能。但是,您似乎需要在 WSL 中安装 realpath
才能识别路径。我不确定为什么会这样,但 运行 sudo apt-get install realpath
帮我修好了!
编辑: 更新到 Fall Creators Update 后从 WSL 启动 VSCode 开箱即用
您始终可以在 WSL 中创建别名 Bash shell
alias code="/mnt/c/Program\ Files/Microsoft\ VS\ Code/Code.exe"
如果您将它添加到您的 .bashrc 或 .zshrc 文件中,那么当您启动一个新的环境实例时它将始终可用。
警告:Do not change Linux files using Windows apps and tools
更新:以上与version 1903或更高版本无关。
除此之外,我最近遇到了完全相同的行为。事实证明,在我使用 VS Code 对 WSL 进行首次尝试时,我还安装了来自 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 包,它只会在后台启动并且永远不会出现。
我在 wsl2 上手动更新 Ubuntu 后遇到了同样的问题。我通过将这个函数添加到 .bashrc
配置文件来解决这个问题。这是比别名更好的解决方案,因为它不会阻塞控制台。
在将其添加到您的配置之前测试 bash 中的功能并根据需要调整路径。当然,您必须将 {username} 更改为您的 Windows 帐户用户名。
function code () { /mnt/c/Users/{username}/AppData/Local/Programs/Microsoft\ VS\ Code/Code.exe; }
如果成功,请将其添加到您的配置脚本中,例如.bashrc
、.zshrc
。这是执行此操作的脚本。
echo "function code () {
/mnt/c/Users/{username}/AppData/Local/Programs/Microsoft\ VS\ Code/Code.exe \"$@\";
}" >> ~/.bashrc
source ~/.bashrc
code .
尽管我的建议是备份并从 Microsoft Store 安装新的发行版,然后使用 Remote - WSL 扩展打开 VS Code。如果初始化 WSL 扩展时出现错误,请先重新安装它。如果您使用 19.04 Ubuntu 并升级到 20.04,它有时需要下载该版本的初始化脚本,否则会失败。
这应该有所帮助:)
另一种方法是使用以下方法:
cmd.exe /c code
这也适用于 VSCodium:
cmd.exe /c codium
我安装了创意者更新。 WSL 正在运行。我可以通过简单地调用 notepad.exe
来执行大多数 .exe 文件但是当涉及到 VS 代码时......我不能使用默认的 code
命令或调用 code.exe
... 我还尝试了 code
和 code.cmd
。为什么 VS Code 不像其他程序那样执行?有没有办法启用 code
命令?
编辑:我现在收到这些错误:
me@mypc:/mnt/c/Users/me/Documents/project_folder$ code . /mnt/c/Program Files (x86)/Microsoft VS Code/bin/code: line 7: realpath: comma nd not found /mnt/c/Program Files (x86)/Microsoft VS Code/bin/code: line 14: ./Code.exe: No such file or directory
Creators 更新 安装了互操作功能。但是,您似乎需要在 WSL 中安装 realpath
才能识别路径。我不确定为什么会这样,但 运行 sudo apt-get install realpath
帮我修好了!
编辑: 更新到 Fall Creators Update 后从 WSL 启动 VSCode 开箱即用
您始终可以在 WSL 中创建别名 Bash shell
alias code="/mnt/c/Program\ Files/Microsoft\ VS\ Code/Code.exe"
如果您将它添加到您的 .bashrc 或 .zshrc 文件中,那么当您启动一个新的环境实例时它将始终可用。
警告:Do not change Linux files using Windows apps and tools
更新:以上与version 1903或更高版本无关。
除此之外,我最近遇到了完全相同的行为。事实证明,在我使用 VS Code 对 WSL 进行首次尝试时,我还安装了来自 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 包,它只会在后台启动并且永远不会出现。
我在 wsl2 上手动更新 Ubuntu 后遇到了同样的问题。我通过将这个函数添加到 .bashrc
配置文件来解决这个问题。这是比别名更好的解决方案,因为它不会阻塞控制台。
在将其添加到您的配置之前测试 bash 中的功能并根据需要调整路径。当然,您必须将 {username} 更改为您的 Windows 帐户用户名。
function code () { /mnt/c/Users/{username}/AppData/Local/Programs/Microsoft\ VS\ Code/Code.exe; }
如果成功,请将其添加到您的配置脚本中,例如.bashrc
、.zshrc
。这是执行此操作的脚本。
echo "function code () {
/mnt/c/Users/{username}/AppData/Local/Programs/Microsoft\ VS\ Code/Code.exe \"$@\";
}" >> ~/.bashrc
source ~/.bashrc
code .
尽管我的建议是备份并从 Microsoft Store 安装新的发行版,然后使用 Remote - WSL 扩展打开 VS Code。如果初始化 WSL 扩展时出现错误,请先重新安装它。如果您使用 19.04 Ubuntu 并升级到 20.04,它有时需要下载该版本的初始化脚本,否则会失败。 这应该有所帮助:)
另一种方法是使用以下方法:
cmd.exe /c code
这也适用于 VSCodium:
cmd.exe /c codium