shell VScode集成终端在初始化过程中突然抛出错误

mepcadol  于 2023-02-24  发布在  Shell
关注(0)|答案(2)|浏览(222)

我在Ubuntu 22.10上使用最新的VScode,在集成终端中打开ZSH和BASH shell时遇到以下问题。标准Ubuntu终端工作正常。
ZSH一体化终端启动后:

compdump:138: command not found: mv
/home/user/.oh-my-zsh/oh-my-zsh.sh:56: command not found: mkdir
/home/user/.oh-my-zsh/tools/check_for_upgrade.sh:29: command not found: git
/home/user/.oh-my-zsh/oh-my-zsh.sh:115: command not found: rm
getent:6: command not found: grep
_p9k_init_cacheable:59: command not found: uname
_p9k_init_cacheable:61: command not found: uname

巴什

Command 'uname' is available in the following places
 * /bin/uname
 * /usr/bin/uname
The command could not be located because '/bin:/usr/bin' is not included in the PATH environment variable.
uname: command not found

就在几个小时前,它还能正常工作。然后我试着在另一台Linux机器上设置远程SSH(Fedora 36,也有同样的错误,我也无法通过谷歌搜索解决)。
我在Settings中使用了@modified关键字,确保没有发生意外的更改。PATH与完全可操作的标准终端中的PATH相同。
想知道是什么问题。

    • 更新。**

PATH变量:
/usr/local/cuda-11.7/bin:/home/user/.conda/envs/env/bin:$PATH
"问题"
与标准终端中完整的PATH扩展不同,PATH在集成终端中进行了部分扩展(省略/usr/bin等)。

zc0qhyus

zc0qhyus1#

基于该误差,
The command could not be located because '/bin:/usr/bin' is not included in the PATH environment variable.
我建议你逃跑,
export PATH="/usr/bin:$PATH"
/bin:/usr/bin添加到PATH
PATH中包含:$PATH意味着 shell 会将变量$PATH添加到PATH的末尾

5m1hhzi4

5m1hhzi42#

问题的原因是用户设置中的以下配置:

terminal.integrated.env.linux": {
    "PYTHONPATH": "/media/user:/media/user/common:$PYTHONPATH",
    "PATH": "/media/user:/media/user/common:$PATH"
}

当PYTHONPATH变量在集成终端中正确展开时,PATH被部分展开为问题的UPDATES部分中显示的内容。要在@Orion447的答案之上构建,寻找PATH可能损坏的任何潜在位置是可能解决问题的方法。

相关问题