我运行了全新安装的 garuda Dragonized,它默认带有鱼壳。我对此没有经验,因此要求安装程序添加 zsh - 它与配置文件一起执行。
启动进入系统后,我仍在运行 Fish,但 zsh 似乎已安装并已配置到位,因此我尝试了 chsh 并重新启动了我的登录帐户。
重新登录后将echo "$SHELL"
返回/usr/bin/zsh
,但活动 shell 显然仍然是鱼
老实说,我昨天有点放弃了,决定和鱼一起滚,但我想尝试了解可能发生了什么......
我很清楚不要混淆我自己的帐户和 sudo - 事实上,我将两者都设置为 zsh 并再次重新启动以达到良好的效果,没有更改任何一个的实际 shell(仍然是鱼),但都报告 /usr/zsh或 /usr/bin/zsh
如果我尝试运行,source ~/.zshrc
那么我会收到有关在 Fish 中使用 = 进行赋值的错误,我应该使用 SET HISTFILE 代替
更新:更改标题以反映新的理解,我还删除了 zsh、所有配置并重新安装
- 我可以手动运行 zsh,它似乎工作正常
- 我正在通过 GUI 从 konsole 启动 shell
我现在认为启动 konsole 的调用可能绑定了一个特定的 shell - 任何在哪里查看的提示将不胜感激
答案1
感谢大家为解决此问题提供的帮助。
原来这是一个将 shell 绑定到 Konsole 终端的设置。有一个命令行标志可以在启动时传递它。
对于基于 garuda KDE 的桌面,您可以settings->configure konsole-> edit profile
从 konsole gui 菜单访问此设置。
答案2
右键单击 Fish 终端,然后在命令下的配置配置文件下将其更改为 /usr/bin/zsh 解决我的问题。它被 /usr/bin/fish 卡住了