使用Zsh启动iTerm2

112

我一直在查看iTerm2的设置,但似乎找不到让它启动Zsh而不是Bash的方法,有人知道在iTerm2中正确的做法吗?

我之所以问这个问题,是因为我来自Mac终端,它很容易让你选择启动什么,但我在iTerm2中似乎找不到类似的直接方法。

我在谷歌上搜索了一下,但不知为何只能找到oh-my-zsh的参考资料,没有关于未修改的iTerm2的内容。

如果您能提供任何帮助,我将非常感激。谢谢 :)

4个回答

194

通过运行chsh -s /bin/zsh命令,将默认的shell更改为/bin/zsh。


33
太棒了!这很有效,我使用了 chsh -s /bin/zsh。以上是需要翻译的内容。 - greduan
36
“chsh -s `which zsh``可能会更好一些。”的意思是建议使用这个命令来更改默认的shell环境为zsh。 - nikola
设置在哪里? - tusharmath
@Tushar 什么设置? - Adam Batkin
请原谅我的无知。按照您所解释的方式运行命令完美地运行。 - tusharmath
显示剩余4条评论

74

尽管使用 chsh -s $(which zsh) 命令对我来说完美地起作用了,但我的 iTerm2 在打开新终端时不会自动使用zsh。

相反,我进入 iTerm2 -> 首选项 -> 个人资料 -> 默认 并在 常规 标签中将命令设置为 /usr/local/bin/zsh 而不是 登录Shell

更新: 使用当前版本的 iTerm(截至2.1.1),仅更改默认 Shell(如上所示)即可完美运行。


2
我投票支持这篇文章,因为提示几乎是完整的。无论如何,命令必须是 login -fp [username]。将 [username] 替换为您的本地用户名。否则,iTerm 将在启动后立即退出。 - Marschal
1
@Marschal 没错,我也犯了同样的错误,并点赞了上面的回答,结果在我做出更改后,我的iTerm就开始退出。 - Hussain K
救了命。我不小心执行了 rm -rf /usr 命令,导致 bash 被删除了,但是我还是能够获取一个 shell 来尝试修复这个问题。 - Ismail
1
不要立即使用这个!崩溃了!我通过我的TimeMachine在[~/Library/Preferences/com.googlecode.iterm2.plist]中恢复了默认配置文件。感谢@Marschal提供正确的答案。 - fish
1
我不得不使用/bin/zsh而不是/usr/local/bin/bash,以避免iterm崩溃。 - Sukanya Pai

8
以下内容对我也起作用:
首选项 -> 配置文件 -> 常规选项卡 -> 命令 -> 选择“自定义 Shell” -> 输入“zsh”
重新启动 iTerm2。
我仍然将 bash 保留为终端的默认 shell。

5
与上面的答案类似: 编辑我创建的zsh配置文件,在“常规”选项卡中,“在启动时发送文本:”字段中,我输入了“clear; pwd; ls; zsh;”,这让我看到我想要看到的内容,并最后启动zsh。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接