答案1
显然 WSL 启动 bash 时登录外壳。除其他事项外,这意味着它会按优先顺序读取您的~/.bash_profile
和.profile
文件。您随后调用的bash
命令将作为交互式非登录shell 因此忽略那些启动文件而是读取你的~/.bashrc
(这大概是你完成 conda 设置的地方)。
~/.profile
常规桌面 Ubuntu 试图通过在默认设置中添加一个部分来使非登录和登录 shell 更加相似,
检查 shell 是否为 bash(不是 sh、zsh 或其他 shell)
如果是,则获取用户的
~/.bashrc
文件来源
WSL 似乎提供了自己的最低配置~/.profile
,不执行此操作 - 但如果它困扰你,你可以
备份当前文件:
cp ~/.profile ~/.profile.bak
从目录中复制默认的 Ubuntu
/etc/skel
:cp /etc/skel/.profile ~/
或者(可能更好),~/.bash_profile
如果您还没有,请创建一个,然后~/.bashrc
从那里获取。
答案2
我从 Github 帖子。虽然这不是真正的解决方案,因为它没有解决 2*[{init}] 问题,但它确实起了作用。