【问题标题】:nvm and gulp found on Visual Code terminal but not on linux terminal在 Visual Code 终端上找到 nvm 和 gulp,但在 linux 终端上没有
【发布时间】:2021-01-24 15:42:30
【问题描述】:

我在 Windows 的 wsl2 上运行 Ubuntu LTS 20.04,这样我就能够编译我的 JS/React 代码并在 linux 中运行我的 php 服务器,并使用 Windows 来使用 Visual Studio Code 进行编码。

这运行得很好,但是发生了一件奇怪的事情,我通过 Visual Studio Code 终端安装了 nvm 和 gulp,如果我在终端上使用它们,它工作正常,但如果我在终端之外执行它就不行(使用 Windows 终端),它说没有找到 gulp 和 nvm。

我假设 VSCode 正在向 PATH 中添加一些东西,但我不知道该怎么做才能让 Windows 终端(outisde VSCode 终端)找到它们。画面如下。左边是在VS Code终端里运行nvm list的结果,右边是在Ubuntu终端上运行的结果,找不到。

【问题讨论】:

  • 你的 VS Code 中的终端是 CMD、PowerShell、Bash 还是不同的东西?
  • 我会说 Bash,我的意思是,我正在使用 WSL,我在 ubuntu 20 终端上运行“代码”以使用代码打开 linux 文件夹上的 VS Code,然后打开终端
  • 您能验证一下吗?有一个带有数字、冒号和外壳名称的小文本框。应该看起来像这样i.imgur.com/PJlbE9d.png
  • 是的,这是 bash:imgur.com/n5dYYZW
  • 好的,那么你可以在这两个中执行echo $PATH 并查看路径是否不同,如果这是最简单的解决方案,最简单的解决方案是将丢失的项目添加到 WSL 中的 $PATH 变量中(更多关于怎么办here)

标签: visual-studio-code gulp nvm wsl-2


【解决方案1】:

我对你的问题有点困惑。听起来您正在通过 VSCode 终端在 Windows 上安装程序,然后尝试在 Windows 上运行它们,但它不起作用。但是随后您的屏幕截图显示 WSL Ubuntu 提示找不到该命令。假设你想在 WSL 下运行这些,登录到 WSL Ubuntu 并运行:

find / -name nvm

如果你真的想使用 Windows 终端来运行程序,你必须找到它在 Windows 中的安装位置,并确保它在你的 %PATH% 中,但这似乎不是你的样子努力去做。

【讨论】:

    【解决方案2】:

    MindSwipe 的评论提供了正确答案。 在 VSCODE 终端上,如果我“echo $PATH”它有 nvm 目录,而 WSL 上的 $PATH 没有,我假设 VSCODE 在使用它而不是全局 WSL 路径安装工具时会改变它自己的终端 PATH。

    我已经更改了 WSL 路径并且它现在可以工作了,我该如何向 MindSwipe 提供赏金?

    【讨论】:

    • 我相信@MindSwipe 需要重新发布评论作为答案,然后您可以接受答案并给予信任。感谢您在此期间发布解决方案。
    猜你喜欢
    • 2020-11-02
    • 2015-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-09
    • 1970-01-01
    相关资源
    最近更新 更多