教程-Zsh安装

摘要

本文记载了 Zsh 及对应 Oh-My-Zsh 的安装与配置方式

前言

2025-09-11 尝试了下 Zsh,给远程服务器装上了,感觉还不错,挺好看的,记录下配置过程,后续考虑给 Windows 也安排一套

2025-09-12 Windows 的终端都不怎么用,算了不折腾了,等哪天要用 WSL 了再配吧

正文

Shell 是程序员和电脑交互的有力工具,尤其是在无界面的服务器上远程开发时更是披荆斩棘的利器,而正所谓工欲善其事必先利其器,用多了默认的 bash,今天我们一起来尝试下 Zsh 的安装和配置

本次实验本地机为 Windows 11 系统,远程服务器为 Ubuntu 20.04 服务端

如果按照过程出现网络问题,可以参考

里面提到的镜像链接

字体安装

Windows

Zsh 在终端中会显示一些图标,因此需要安装专门的字体,NerdFonts,选个喜欢的自己下载即可

解压后安装,然后设置终端字体,后面安装主题时会有一个测试来检验字体是否可行

PyCharm 在远程开发时似乎只能使用远程服务器的字体,而 Ubuntu 服务器端怎么安装字体我还没整明白,明明已经安装成功了但是 PyCharm 上还是只有三种字体,不知道是不是我的理解有问题其实只能用这三种字体

但是 VSCode 可以用本地机器的字体,所以现在只修改了 VSCode 远程开发的终端

我正在使用的是 Maple Mono 字体,是国人做的,对中文支持较好,同时也支持 Nerd Fonts 的图标,在 Windows 上安装可以采用 Scoop,这个是 Windows 上的包管理器,用 PowerShell 安装运行

Scoop 安装指令如下

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression

采用 Scoop 安装字体指令如下

# 添加容器
scoop bucket add nerd-fonts
# 安装字体,NF代表嵌入了NerdFonts的图标,CN表示嵌入了中文和日文字体
scoop install Maple-Mono-NF-CN

字体名为 Maple Mono NF CN

Ubuntu

还没研究明白,后续补充

TODO

Zsh 安装

Ubuntu

# 更新软件源
sudo apt update && sudo apt upgrade -y
# 安装 zsh git curl
sudo apt install zsh git curl -y

安装完成即可,随后设置 zsh 为默认 Shell

# chsh是 "change shell" 的缩写,-s用于指定新 shell 的路径
chsh -s /bin/zsh

Oh-My-Zsh

Oh My Zsh 是一个功能强大且易于定制的 Zsh 配置管理框架,为 Zsh 提供了一些主题和插件的支持

框架

安装 Oh-My-Zsh 指令如下

sh -c "$(curl -fsSL https://install.ohmyz.sh/)"

主题

主题可以通过以下指令查看

cd ~/.oh-my-zsh/themes && ls

我选择的是最大众化的 powerlevel10k 主题,安装指令如下

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

然后打开一下 zsh 的配置文件 ~/.zshrc,指令如下

nano ~/.zshrc

修改主题对应部分的配置为

ZSH_THEME="powerlevel10k/powerlevel10k"

然后 Ctrl+X 退出 Nano,输入 y 确认修改接着回车 Enter 即可

然后重新加载一下配置文件就可以进入主题的设置引导了

source ~/.zshrc

此处一定要确认字体安装部分已经完成了,如果测试图标和你看到的不一样,就停止下一步返回修改字体,否则会影响后续个性化配置,确认图标无误后按照文字和图标指引选择自己喜欢的方案即可,具体可参考

插件

最后就是插件安装,此处后续可能随着我个人的使用情况继续增补

Zsh-autosuggestions

指令补全插件,输入命令时自动推测并建议可能需要输入的命令,按下右方向键 可以采用建议,安装指令如下

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
Zsh-syntax-highlighting

语法错误高亮插件安装指令,当你输入错误语法的指令时会显示为红色,安装指令如下

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
AutoJump(与内置插件 z 功能重合)

自动跳转插件,能够快速跳转你访问过的文件夹,指令格式为 j <目录>

你可以用 jc 来优先跳转到子文件夹,jo 在文件管理器中打开目录,经测试会调用远程机的目录,我用的是无界面的服务器所以没办法成功调用

sudo apt install autojump

然后在 ~/.zshrc 结尾加上

. /usr/share/autojump/autojump.sh

最后重载一下 ~/.zshrc 即可

source ~/.zshrc

这个插件不需要添加到后续的插件列表的配置中, 不过和 Zsh 内置的 z 插件效果类似,优点是 bash 之类的其余 shell 也能使用,如果先前使用习惯了的话可以无缝衔接

以下插件不需要安装,按需添加到配置文件即可

z

一个文件夹快捷跳转插件,通过记录你访问过的目录,并根据访问频率来优化目录跳转。你只需要输入部分目录名称即可快速跳转,用法为 z <部分目录名>

extract

可以用于一个指令解压任意压缩文件,而不用去记一堆解压指令,用法为 x <压缩包>

能让我们在命令行中使用搜索引擎进行搜索,在终端执行后会调用本地机的浏览器, 用法为 baidu/google/…… <搜索内容>

将需要的插件添加到配置文件 ~/.zshrc 中对应部分即可,具体办法参考上面修改主题配置的指令

plugins=(git zsh-autosuggestions zsh-syntax-highlighting z extract web-search)

到此,安装基本上就告一段落,剩下的一些快捷操作指令之类的东西留待我在后续使用过程中再进行补充了, 后续会整理成 快捷键-Zsh 笔记放出

补充

参考资料

  1. zsh 安装与配置,使用 oh-my-zsh 美化终端 | Leehow的小站

  2. 我的终端环境:与众不同的 zsh 主题 - powerlevel10k本文介绍 zsh 主题 powerlevel10k - 掘金

相关链接

  1. GitHub - subframe7536/maple-font: Maple Mono: Open source monospace font with round corner, ligatures and Nerd-Font icons for IDE and terminal, fine-grained customization options. 带连字和控制台图标的圆角等宽字体,中英文宽度完美2:1,细粒度的自定义选项
  2. Scoop
  3. Oh My Zsh - a delightful & open source framework for Zsh

对应文件

  1. 快捷键-Zsh