首页 > 解决方案 > “无法解析您的 shell 环境”

问题描述

在 macOS Big Sur 上,我安装了 MacPorts 并使用它安装了 bash。/opt/local/bin/bash我通过使用将我的默认 shell 设置为 bash 的 MacPorts 版本chsh

一切都好。

我决定我宁愿使用 Homebrew。我卸载了 MacPorts,安装了 Homebrew,通过 homebrew 安装了 bash,并将我的默认 shell 设置为/opt/homebrew/bin/bashvia chsh

一切都很好,除了当我第一次启动 vscode(来自 Finder)时,它报告:

Unable to resolve your shell environment: A system error occurred (spawn /opt/local/bin/bash ENOENT)

这是一个完全合理的抱怨,因为该二进制文件不再存在。从 Finder 启动时会发出此投诉,但从终端启动时不会。在我的用户settings.json文件中没有对这个先前版本的 bash 的引用,在我的.bashrc.

vscode 到底是从哪里获得 bash 的呢?!

编辑(2021-10-11):这里发生了一些奇怪的事情。如果我在 vscode 中打开一个集成终端:

$ echo $SHELL
/opt/local/bin/bash
$ ls -lh $SHELL
ls: /opt/local/bin/bash: No such file or directory
$ ps -p $$
  PID TTY           TIME CMD
45388 ttys001    0:00.12 /bin/bash -l

(在常规的 macOS 终端应用程序中没有此类问题)

再次编辑(2021-10-12):

标签: visual-studio-code

解决方案


推荐阅读