【问题标题】:How to open VSCode from a Windows Linux Subsystem?如何从 Windows Linux 子系统打开 VSCode?
【发布时间】:2020-12-31 19:23:51
【问题描述】:

我在我的主机操作系统上安装了 VSCode,它是 Windows 10,我有一个 Ubuntu 子系统终端 (WSL),我试图用这个命令打开 VSCode code . 问题是输出是Command 'code' not found。我怎样才能做到这一点?

【问题讨论】:

    标签: linux visual-studio-code windows-subsystem-for-linux


    【解决方案1】:

    假设你已经在默认位置安装了 VSCode,那么在 WSL 中你可以这样做:

    PATH="$PATH:/mnt/c/Users/your-user-name/AppData/Local/Programs/Microsoft VS Code"
    

    然后运行code.exe .

    【讨论】:

      【解决方案2】:

      首先,尝试在 VSCode 中安装 Remote - WSL 扩展(或元 Remote Development 扩展包,其中包含 WSL 工作)。

      我怀疑这是您的主要问题,但它可能会有所帮助。

      接下来,尝试在 PowerShell 下运行 code . - 可以吗?如果不是,则 VSCode 不在 Windows 路径中。尝试重新安装它——如果它不在路径中,则其他一些关联也可能没有正确安装。我不记得在安装过程中是否有添加或不添加到 Windows 路径的选项,但如果有,可能是在安装过程中取消了选择。

      如果它确实在 Windows 中启动,那么显然它在 Windows 路径中。默认情况下,WSL 在初始化期间将 Windows 路径附加到 Ubuntu 中的默认路径。所以(同样,默认情况下)code . 如果在 PowerShell 下工作,它应该可以在 WSL 中工作。

      在 Ubuntu (echo $PATH) 下检查您的 $PATH。 .../Microsoft VS Code/bin 目录(无论它安装在哪里)是否在路径中?如果不是,那么 WSL 可能不会执行其默认追加。在 Ubuntu 下编辑 /etc/wsl.conf 并查看是否有 [interop] 部分,如:

      [interop]
      appendWindowsPath=false
      

      如果是这样,则将其更改为 true(或将其完全删除)以允许 WSL 添加 Windows 路径。如果缺少它是默认设置,您可以尝试添加它并将其设置为true(尽管这应该没有任何效果)。

      如果这仍然不起作用,请检查您的启动脚本(例如.profile.bash_profile.bashrc),看看是否对 PATH 进行了任何可能导致此问题的修改。

      【讨论】:

        【解决方案3】:

        您需要指定全名,例如code.exe ...(注意 .exe)。

        【讨论】:

        • @Klein-_0 - 您运行的是旧版本的 Windows 10/WSL?如果是这样,您可能必须为程序指定完整的PATH;见Microsoft help ...
        • 它们都是最新版本。
        • 您是否尝试过使用完整路径,例如/mnt/c/Windows/System32/notepad.exe?只需将 Windows/System32/notepad.exe` 替换为您的可视代码可执行文件的实际路径和可执行文件名称即可。
        • code . 本身就可以工作。 WSL 下不需要 .exe(版本 1 和 2 都不是)。 OP 所经历的是另一回事。
        猜你喜欢
        • 2016-12-23
        • 1970-01-01
        • 1970-01-01
        • 2022-01-05
        • 2023-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多