## 1. zsh 是什么 zsh 是一个 Shell 解释器,全称 Z Shell,它的目标是想做大家使用的最后一个 Shell。 有些同学分不清终端和 Shell 的区别?甚至有时候会把这两个概念混为一谈,但你要清楚它们不是一个东西。 1. 这里说的终端是一个软件,比如自带的终端和 iterm2,还有 tabby、alacrity、wezterm 等等终端软件。 2. Shell 是命令解释器,你输入一个 ls 给 Shell,它给你返回当前目录下所有的文件和文件夹,这就是 shell 干的事。 说到 Shell,最经典的 Shell 是 bash,登录任何一个服务器都能看到 bash,而 Mac 自带的终端 Shell 就是 zsh,zsh,zsh 比 bash 功能更加强大、可定制化能力也更多。 下面我们就开始安装和配置 zsh,让你的终端更加好用! 官网:[https://www.zsh.org/](https://www.zsh.org/) ## 2. 安装 zsh 通常这一步是可以跳过的,因为 Mac 默认会自带这个 Shell。 运行 `zsh --version`如果可以显示版本号,说明你已经安装了 zsh,否则通过 bew 安装即可。 ![](https://cdn.nlark.com/yuque/0/2024/png/1863084/1718894980802-f15b6d88-d838-48c7-8aea-c4137d3fa969.png) ```bash brew install zsh ``` 同时通过 `echo $SHELL`可以查看当前终端默认使用的 shell。 ![](https://cdn.nlark.com/yuque/0/2024/png/1863084/1718895067924-f37d5705-0b46-47ea-adf6-aeae84b6e1c0.png) ## 3. 安装 oh my zsh oh my zsh 是一套优秀的 zsh 配置,带有一些默认配置、插件和主题,支持定制化,只需简单的配置就能开箱即用,而且在 GitHub 上也是优秀的开源项目,已有 170K Star,如果觉得好用可以点个 Star。 > 这里宣传一下我的 GitHub:[https://github.com/tonngw](https://github.com/tonngw) > 官网:[https://ohmyz.sh/](https://ohmyz.sh/) GitHub:[https://github.com/ohmyzsh/ohmyzsh](https://github.com/ohmyzsh/ohmyzsh) 下面我们正式开始安装 oh my zsh。 ```bash sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" ``` 安装成功之后会提示已经为你生成了默认的配置文件,在 `/Users/你的用户名/.zshrc`文件中, 有主题、插件可以供你选择安装。 .zshrc 文件是 zsh 的配置文件,关于 zsh 所有的配置都在这个文件里,如果你不装 oh my zsh 的话,默认是没有这个文件的,安装之后它会生成一个带有一些默认配置的 .zshrc。 ![](https://cdn.nlark.com/yuque/0/2024/png/1863084/1718895451422-b8d95c6e-7245-4fe3-b153-f9a633772c4d.png) ## 4. 配置 zsh 主题 使用 vim 打开 .zshrc 文件 > **关于 vim 的配置和使用太多了,可以考虑后面单独出一个系列教程,感兴趣的大家可以提前点个关注,以免错过最新的更新。** > ```bash vim ~/.zshrc ``` 大家可以自行到 [https://github.com/ohmyzsh/ohmyzsh/wiki/Themes](https://github.com/ohmyzsh/ohmyzsh/wiki/Themes) 选择喜欢的终端主题,每种主题都有对应的效果图。 只需要把我选中的部分修改成对应的主题名字即可,h j k l 上下左右移动,按 i 进入编辑模式,修改完成之后按 ESC,输入 `:wq`保存并退出即可。 ![](https://cdn.nlark.com/yuque/0/2024/png/1863084/1718895926896-74932617-fd3c-43d3-90c7-e38fc883052e.png) 退出之后记得执行以下命令刷新最新的配置才能生效,或者关掉重新打开终端。 ```bash source ~/.zshrc ``` **这里我就不挑选主题了,因为后面我会教大家如何使用现在最火的 p10k 主题,我也一直在用。** ## 5. 配置 zsh 插件 依然是 `vim ~/.zshrc`打开我们的配置文件,可以看到 plugins 里面就是我们需要配置的插件,默认只有一个 git,剩下的几个插件大家都填好等我挨个解释它的作用。 ![](https://cdn.nlark.com/yuque/0/2024/png/1863084/1718508940971-c65e414c-f4d5-4deb-adac-321ba861302d.png) `git`:这个插件就不多说了,如果我们进入一个 git 仓库,它会展示你的分支名和仓库信息等等。 `z`:是一个快速跳转命令插件,和 cd 的区别是 z 后面可以跟一个模糊的路径,这个路径必须是你之前 cd 访问过的按 Tab 才能提示出来。 `zsh-syntax-highlighting`:是一个命令高亮的插件,需要单独安装才能使用 ```bash git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting ``` `zsh-autosuggestions`:是一个自动补全命令的插件,需要单独安装才能使用 ```bash git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions ``` 搞完之后 ```bash source ~/.zshrc ``` 刷新配置就可以了。 ![](https://cdn.nlark.com/yuque/0/2024/png/1863084/1718896868849-06d4b829-65ea-474c-bca4-ec0b066c2382.png) oh my zsh 还提供了很多好用好玩的插件,大家感兴趣的可以自行体验,地址我贴这里了:[https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins](https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins) ## 6. 最后 到这里关于 zsh、oh my zsh、主题和插件的安装和配置就已经介绍完了,相信大家跟着教程从头到尾做下来,一定能够做出和我一模一样的效果。 这一套流程也是我踩了很多的坑摸索过来的,现在通俗易懂的给大家分享出来。 ## 7. 参考资料 [https://www.freecodecamp.org/chinese/news/how-to-configure-your-macos-terminal-with-zsh-like-a-pro/](https://www.freecodecamp.org/chinese/news/how-to-configure-your-macos-terminal-with-zsh-like-a-pro/)