0

0

Linux ZSH 更便捷的 shell 环境

絕刀狂花

絕刀狂花

发布时间:2025-07-19 08:22:12

|

757人浏览过

|

来源于php中文网

原创

简介

zsh 是为交互式使用而设计的,与 bash 兼容的 shell,尽管它也是一种强大的脚本语言。zsh 融合了 bash、ksh 和 tcsh 的许多有用特性,并引入了许多独特的功能。

相较于 bash,zsh 具有以下优势:

Tab 补全功能强大,支持命令、命令参数和文件路径的补全。丰富的插件支持,允许快速输入先前使用的命令、快速跳转文件夹和显示系统负载等功能。主题丰富且可高度定制。更多关于 zsh 的信息,请访问 https://www.php.cn/link/5122eee5a7e2768194775f68037e2ebc

安装 zsh

macOS:

brew install zsh

Ubuntu:

sudo apt-get install zsh

安装验证

安装完成后,使用 cat /etc/shells 查看系统可用的 shell:

$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/bin/dash
/usr/bin/dash
/usr/bin/tmux
/bin/zsh
/usr/bin/zsh

修改默认 shell

查看当前默认 shell:

$ echo $SHELL
/bin/bash

使用 chsh -s /bin/zsh 命令将 zsh 设置为系统默认 shell。

为 root 设置默认 shell:

sudo chsh -s /bin/zsh

为特定用户设置默认 shell:

sudo chsh -s /bin/zsh <username>
# <username> 替换为实际用户名

切换完成后会显示如下信息(安装 oh-my-zsh 成功后也会提示切换):

# sudo chsh -s /bin/zsh
Changing shell for root.
Shell changed.

初次启动 zsh 会进入配置界面,输入 0 可以跳过:

This is the Z Shell configuration function for new users,
zsh-newuser-install.
You are seeing this message because you have no zsh startup files
(the files .zshenv, .zprofile, .zshrc, .zlogin in the directory
~).  This function can help you with a few settings that should
make your use of the shell easier.
You can:
(q)  Quit and do nothing.  The function will be run again next time.
(0)  Exit, creating the file ~/.zshrc containing just a comment.
     That will prevent this function being run again.
(1)  Continue to the main menu.
(2)  Populate your ~/.zshrc with the configuration recommended
     by the system administrator and exit (you will need to edit
     the file by hand, if so desired).
--- Type one of the keys in parentheses --- 0

安装 Oh My Zsh

Oh My Zsh 的 GitHub 主页:https://www.php.cn/link/5d36b2dba58acec55fa2a9b197fb3e1d

由于 zsh 的配置复杂度较高,Oh My Zsh 极大地降低了使用门槛。

安装命令:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# 或者
sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

安装成功提示:

Looking for an existing zsh config...
Found /home/vvd/.zshrc. Backing up to /home/vvd/.zshrc.pre-oh-my-zsh
Using the Oh My Zsh template file and adding it to /home/vvd/.zshrc.
         __                                     __
    ____  / /_     ____ ___  __  __   ____  _____/ /_
   / __ \/ __ \   / __ `__ \/ / / /  /_  / / ___/ __ \
  / /_/ / / / /  / / / / / / /_/ /    / /_(__  ) / / /
  \____/_/ /_/  /_/ /_/ /_/\__, /    /___/____/_/ /_/
                            /____/                       ....is now installed!
Before you scream Oh My Zsh! look over the `.zshrc` file to select plugins, themes, and options.
• Follow us on Twitter: @ohmyzsh
• Join our Discord community: Discord server
• Get stickers, t-shirts, coffee mugs and more: Planet Argon Shop
➜  ~

修改主题

使用 vim 编辑 ~/.zshrc

vim ~/.zshrc

其中 ZSH_THEME 是主题字段,主题信息可在此查看。

例如,将主题字段修改为 jonathan

Linux ZSH 更便捷的 shell 环境

也可以随机设置主题:

ZSH_THEME="random"

每次打开终端,主题将会随机变化。推荐尝试 powerlevel10k 主题,项目地址为:https://www.php.cn/link/12b865d68061b0c406c140adf7076aee

安装 powerlevel10k 主题的方法:

git clone --depth=1 https://www.php.cn/link/12b865d68061b0c406c140adf7076aee.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

编辑 .zshrc,添加以下内容并保存:

ZSH_THEME="powerlevel10k/powerlevel10k"

最后,执行 source ~/.zshrc 使配置生效,按照提示配置主题。

别名配置

查看 git 的别名:

Taygod免费企业建站系统 A1.1
Taygod免费企业建站系统 A1.1

TAYGOD免费企业建站系统是一款开源的免费程序,您可以 TAYGOD免费企业建站系统ASP版是一款基于asp+access的免费开源建站系统。整套系统的设计构造,完全考虑中小企业类网站的功能要求,网站后台功能强大,管理简捷,支持模板机制,能够快速建立您的企业网站。 系统特性: 采用流行的asp+access设计,功能强,实用性高。 代码美工完全分离,维护更方便。 对运行环境要求低,基本上一般的

下载
cat ~/.oh-my-zsh/plugins/git/git.plugin.zsh
......alias g='git'alias ga='git add'alias gaa='git add --all'alias gapa='git add --patch'alias gau='git add --update'alias gav='git add --verbose'alias gap='git apply'alias gapt='git apply --3way'......

自定义别名,直接在 ~/.zshrc 的最下面添加:

# Example aliases
alias ll='ls -lahF --color --time-style=long-iso'

或者使用 echo 写入:

echo 'alias ll="ls -lahF --color --time-style=long-iso"' >> ~/.zshrc

命令自动补全

Oh My Zsh 内置的自动补全功能包括:

  • 自动列出目录:输入 cd 并按 tab 键,目录将自动列出,再按 tab 可以切换。
  • 自动目录名简写补全:访问 /usr/local/bin,只需输入 cd /u/l/b 并按 tab 键自动补全。
  • 自动大小写更正:访问 Desktop 文件夹,只需输入 cd de 并按 tab 键自动补全。
  • 自动命令补全:输入 kubectl 并按 tab 键即可看到可用命令。
  • 自动补全命令参数:输入 kill 并按 tab 键会自动显示进程的 process id。

zsh-completions

额外的自动补全功能,通过以下命令克隆仓库:

git clone --depth=1 https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-completions

.zshrc 中添加以下行,确保在 source "$ZSH/oh-my-zsh.sh" 之前:

fpath+=${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-completions/src

注意:将其作为常规的 Oh My Zsh 插件添加不会正常工作(参见 #603)。

其他插件

zsh-autosuggestions

根据历史输入命令的记录即时提示,按 → 键即可补全:

git clone --depth=1 https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-autosuggestions

编辑 ~/.zshrc,找到 plugins=(git) 这一行,修改为:

plugins=(
    git
    # other plugins...
    zsh-autosuggestions
)

Incremental completion on zsh

增强的实时自动命令补全插件:Incremental completion on zsh。

语法高亮插件

插件名称:zsh-syntax-highlighting

作用:命令错误会显示红色,直到输入正确才会变绿色,路径正确会显示下划线。

安装:

git clone --depth=1 https://www.php.cn/link/d54be4ff5a9dad8e016206a562bb7915.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

配置启用插件:

编辑 ~/.zshrc,在 plugins 部分添加插件名称:

plugins=([plugins...] zsh-syntax-highlighting)

开启新的 Shell 或执行 source ~/.zshrc,即可体验插件。

文件夹快捷跳转插件

z 是一个文件夹快捷跳转插件,对于曾经跳转过的目录,只需输入最终目标文件夹名称即可快速跳转,提高切换文件夹的效率。

由于 Oh My Zsh 内置了 z 插件,只需在 .zshrc 中将 z 加入插件列表:

plugins=(
    # other plugins...
    zsh-autosuggestions
    zsh-syntax-highlighting
    z
)

升级 Oh My Zsh

打开终端输入:

upgrade_oh_my_zsh

卸载 Oh My Zsh

终端输入:

uninstall_oh_my_zsh
Are you sure you want to remove Oh My Zsh? [y/N]  Y

终端提示信息:

Removing ~/.oh-my-zsh
Looking for original zsh config...
Found ~/.zshrc.pre-oh-my-zsh -- Restoring to ~/.zshrc
Found ~/.zshrc -- Renaming to ~/.zshrc.omz-uninstalled-20170820200007
Your original zsh config was restored. Please restart your session.
Thanks for trying out Oh My Zsh. It's been uninstalled.

参考文献

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

4139

2026.01.21

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

979

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

581

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

275

2023.07.24

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

568

2024.04.09

git怎么对比两个版本的文件内容
git怎么对比两个版本的文件内容

要对比两个版本的 git 文件,请使用 git diff 命令:git diff 比较工作树和暂存区之间的差异。git diff 比较两个提交或标签之间的差异。git diff 输出显示差异块,其中 + 表示添加的行,- 表示删除的行, 表示修改的行。可使用 gitkraken、meld、beyond compare 等可视化工具更直观地查看差异。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

533

2024.04.09

vim保存退出命令
vim保存退出命令

vim是一个非常强大的文本编辑器,常用于Unix和Linux系统。它是从vi发展而来的,相比vi有许多改进和扩展。在vim中,保存并退出的命令是:wq"wq"这个命令是由两个部分组成的。其中,"w"表示写入文件,将所做的更改保存到磁盘;而"q"表示退出vim编辑器。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

269

2023.08.01

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2907

2024.08.16

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
尚观shell视频教程
尚观shell视频教程

共8课时 | 1.7万人学习

Linux开发篇视频教程
Linux开发篇视频教程

共18课时 | 4.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号