
Oh My Zsh 是一个开源的、社区驱动的框架,用于管理您的 zsh
配置。
听起来很无聊。让我们再试一次。
Oh My Zsh 不会让你成为 10 倍的开发人员…但你可能会觉得自己是其中之一。
安装后,您的终端外壳将成为热门话题 或者退款! 每次击键
在命令提示符中,您将利用数百个强大的插件和漂亮的主题。
陌生人会在咖啡馆里走到你面前问你, “这太神奇了!你是天才吗?
最后,您将开始获得您一直认为自己应得的那种关注。…或者也许你会
利用您节省的时间开始更频繁地使用牙线。😬
要了解更多信息,请访问 ohmyz.sh跟随 @ohmyzsh 在 X 上(以前
Twitter)一个nd join us on Discord.
Getting Started
Operating System Compatibility
| 作系统 | 地位 |
|---|---|
| 人造人 | ✅ |
| freeBSD | ✅ |
| LCARS | 🛸 |
| Linux | ✅ |
| macOS | ✅ |
| OS/2 变形 | ❌ |
| Windows (WSL2) | ✅ |
Prerequisites
- Zsh 应该安装 (v4.3.9 或者 more recent is fine but we prefer 5.0.8 and
newer). If not pre-installed (runzsh --version以确认),请在此处查看以下 wiki 说明:
Installing ZSH 卷曲orwgetshould be installedgit应安装(推荐 v2.4.11 或更高版本)
Basic Installation
Oh My Zsh 已安装 by running one of the following commands 在your terminal. 你 can install this via the
命令行,替换为 curl, wget 或nother similar tool.
| 方法 | 命令 |
|---|---|
| curl | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
| wget | sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
| 获取 | sh -c "$(fetch -o - https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
或者,安装程序也会镜像到 GitHub 外部。如果您符合以下条件,则可能需要改用此网址
在中国或印度等国家/地区(对于某些 ISP),阻止 raw.githubusercontent.com:
| Method | Command |
|---|---|
| curl | sh -c "$(curl -fsSL https://install.ohmyz.sh/)" |
| wget | sh -c "$(wget -O- https://install.ohmyz.sh/)" |
| fetch | sh -c "$(fetch -o - https://install.ohmyz.sh/)" |
请注意,以前的任何 .zshrc 将重命名为.zshrc.pre-oh-my-zsh.安装后,您可以移动
要保留到新的 .zshrc.
Manual Inspection
最好检查您还不知道的项目中的安装脚本。您可以通过以下方式做到这一点
首先下载安装脚本,浏览它,使一切看起来正常,然后运行它:
12
如果上述 URL 超时或失败,您可能必须将 URL 替换为
https://install.ohmyz.sh 能够获得脚本。
Using Oh My Zsh
Plugins
Oh My Zsh 附带了大量插件供您利用。大家可以看看
plugins 目录和/或
wiki 以查看当前可用的内容。
Enabling Plugins
一旦您发现想要与 Oh My Zsh 一起使用的插件(或多个),您需要在
.zshrc 文件。你会在你的$HOME 目录。使用您最喜欢的文本编辑器打开它
您将看到一个位置,列出要加载的所有插件。
1 vi ~/.zshrc
For example, this 可能 begin to look like this:
123456789 plugins=( git bundler dotenv macos rake rbenv ruby)
请注意,插件用空格分隔(空格、制表符、换行符… 不要 在
否则它就会破裂。
Using Plugins
每个内置插件都包含一个 自述文件,记录下来。此自述文件应显示别名(如果插件
添加任何)和该特定插件中包含的额外好东西。
Themes
我们会承认这一点。在 Oh My Zsh 世界的早期,我们可能有点太喜欢主题了。我们有超过一个
现在捆绑了一百五十个主题。他们中的大多数人都有
screenshots 在 wiki 上(我们正在努力更新它!
看看它们!
Selecting A Theme
Robby 的主题是默认主题。这不是最奇特的。这不是最简单的。恰到好处
一个(对他来说)。
找到要使用的主题后,您需要编辑 ~/.zshrc 文件。你会看到一个
环境变量(全部大写),如下所示:
1 ZSH_THEME="robbyrussell"
To use a different theme, simply change the value to match the name of your desired theme. 例如:
12 ZSH_THEME="agnoster" # (this is one of the fancy ones)
[!NOTE]
You will many times see screenshots for a zsh theme, and try it out, and find that it doesn’t look the same for you.This is because many themes require installing a Powerline Font or a
Nerd Font 以便正确渲染。没有它们,这些主题
will render weird prompt symbols. Check out
the FAQ 了解更多
information.Also, beware that themes only control what your prompt looks like. This is, the text you see before or after
your cursor, where you’ll type your commands. Themes don’t control things such as the colors of your
terminal window (known as 配色方案) 或终端的字体。这些是您可以设置的
change in your terminal emulator. For more information, see
what is a zsh theme.
打开一个新的终端窗口,您的提示应该如下所示:

如果您没有找到适合您需求的主题,请查看 wiki
more of them.
如果您感觉精力充沛,您可以让计算机在每次打开新
终端窗口。
1 ZSH_THEME="random" # (...please let it be pie... please be some pie..)
如果您想从您最喜欢的主题列表中随机选择一个主题:
1234 ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster")
如果您只知道不喜欢哪些主题,则可以将它们添加到忽略列表中:
1 ZSH_THEME_RANDOM_IGNORED=(pygmalion tjkirch_mod)
FAQ
如果您还有其他疑问或问题,您可以在我们的
FAQ.
Advanced Topics
如果你是那种喜欢亲自动手的人,这些部分可能会引起共鸣。
Advanced Installation
Some users may want to manually install Oh My Zsh或 change the default path or other settings that the
安装程序接受(这些设置也记录在安装脚本的顶部)。
Custom Directory
默认位置为 ~/.oh-my-zsh (隐*在您的主目录中,您可以使用
cd ~/.oh-my-zsh)
如果您想使用 ZSH 环境变量,通过运行
export ZSH=/your/path 安装之前,或者在安装管道结束之前设置它,如下所示:
1 ZSH="$HOME/.dotfiles/oh-my-zsh" sh install.sh
Unattended Install
如果您将 Oh My Zsh 安装脚本作为自动安装的一部分运行,则可以将
--unattended 标志添加到install.sh 脚本。这将产生不尝试更改默认值的效果
shell 的 shell,它也不会运行 zsh 安装完成后。
1 sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
如果您在中国、印度或其他阻止的国家/地区 raw.githubusercontent.com,您可能不得不
将 URL 替换为 https://install.ohmyz.sh 以便安装。
Installing From A Forked Repository
安装脚本还接受以下变量以允许安装不同的存储库:
-
REPO(默认值:ohmyzsh/ohmyzsh):这采用owner/repository.如果设置此变量,
the installer will look for a repository athttps://github.com/{owner}/{repository}. -
REMOTE(default:https://github.com/${REPO}.git):这是 git 存储库克隆的完整 URL。你
can use this setting if you want to install from a fork that is not on GitHub (GitLab, Bitbucket…) or if
you want to clone with SSH instead of HTTPS (git@github.com:user/project.git).注意:它与将
REPO变量。此设置将优先。 -
BRANCH(default:master):如果要将默认分支更改为
checked out when cloning the repository. This might be useful for testing a Pull Request, or if you want to
use a branch other thanmaster.
For example:
1 REPO=apjanke/oh-my-zsh BRANCH=edge sh install.sh
Manual Installation
1. 克隆存储库
1 git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh
2. 选择、备份现有的 ~/.zshrc 文件
1 cp ~/.zshrc ~/.zshrc.orig
3. 创建一个新的 Zsh 配置文件
您可以通过复制我们为您提供的模板来创建新的 zsh 配置文件。
1 cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
4. 更改默认 Shell
1 chsh -s $(which zsh)
您必须从用户会话注销并重新登录才能看到此更改。
5. 初始化您的新 Zsh 配置
Once you open up a new terminal window, it should load zsh with Oh My Zsh’s 配置。
Installation Problems
如果您在安装时遇到任何问题,这里有一些常见的修复方法。
- You might 需要修改您的
PATHin~/.zshrc如果您在之后找不到某些命令
switching tooh-my-zsh. - 如果您手动安装或更改了安装位置,请检查
ZSH环境变量
~/.zshrc.
Custom Plugins And Themes
如果要覆盖任何默认行为,只需添加一个新文件(结尾为 .zsh) 在 custom/
目录。
如果你有许多功能可以很好地搭配在一起,你可以把它们放成一个 XYZ.plugin.zsh 文件中的
custom/plugins/ 目录,然后启用此插件。
如果您想覆盖与 Oh My Zsh 一起分发的插件的功能,请创建一个
相同的名称 custom/plugins/ 目录,它将被加载而不是plugins/.
Enable GNU ls In macOS And freeBSD Systems
Oh My Zsh 中的默认行为是使用 BSD ls 在 macOS 和 FreeBSD 系统中。如果 GNUls is installed
(作为 gls 命令),您可以选择使用它。为此,您可以在之前使用 zstyle 的 config
采购 oh-my-zsh.sh:
1 zstyle ':omz:lib:theme-and-appearance' gnu-ls yes
注意:这与 DISABLE_LS_COLORS=true
Skip Aliases
如果您想跳过默认的 Oh My Zsh 别名(在 lib/* files)或插件别名,您可以使用
您的 ~/.zshrc 文件在加载 Oh My Zsh 之前.请注意,有很多不同的
跳过别名的方法,具体取决于您的需要。
123456789101112 # Skip all aliases, in lib files and enabled pluginszstyle ':omz:*' aliases no # Skip all aliases in lib fileszstyle ':omz:lib:*' aliases no# Skip only aliases defined in the directories.zsh lib filezstyle ':omz:lib:directories' aliases no # Skip all plugin aliaseszstyle ':omz:plugins:*' aliases no# Skip only the aliases from the git pluginzstyle ':omz:plugins:git' aliases no
您可以以其他方式组合这些内容,同时考虑到更具体的作用域优先:
123 # Skip all plugin aliases, except for the git pluginzstyle ':omz:plugins:*' aliases nozstyle ':omz:plugins:git' aliases yes
此功能的早期版本使用以下设置,该设置已被删除:
1 zstyle ':omz:directories' aliases no
相反,您现在可以使用以下内容:
1 zstyle ':omz:lib:directories' aliases no
通知
This feature is currently in a testing phase and it may be subject to change in the future. It is also not
currently compatible with plugin managers such as zpm or zinit, which don’t source the init script
(oh-my-zsh.sh) 中实现了此功能。
It is also not currently aware of “aliases” that are defined as functions. Example of such are
gccd,
ggf, orggl函数。
Async git prompt
异步提示函数是一项实验性功能(包含在 2024 年 4 月 3 日),允许 Oh My Zsh 渲染
异步提示信息。这可以提高提示呈现性能,但可能效果不佳
有一些设置。我们希望这不是问题,但如果您发现此新功能有问题,您可以
在获取 Oh My Zsh 之前,通过在 .zshrc 文件中设置以下内容将其关闭:
1 zstyle ':omz:alpha:lib:git' async-prompt no
如果你的问题是 git 提示符刚刚停止出现,你可以尝试通过设置以下命令来强制它
配置之前 oh-my-zsh.sh 来源。如果它仍然不起作用,请打开一个问题
箱。
1 zstyle ':omz:alpha:lib:git' async-prompt force
Getting Updates
默认情况下,系统将提示您每 2 周检查一次更新。您可以通过以下方式选择其他更新模式
在 ~/.zshrc file, before Oh My Zsh is loaded:
-
自动更新,无确认提示:
1zstyle ':omz:update' mode auto -
如果有可用更新,只需每隔几天提供一次提醒:
1zstyle ':omz:update' mode reminder -
要完全禁用自动更新,请执行以下作:
1zstyle ':omz:update' mode disabled
注意:您可以使用以下设置控制 Oh My Zsh 检查更新的频率:
1234 # This will check for updates every 7 dayszstyle ':omz:update' frequency 7# This will check for updates every time you open the terminal (not recommended)zstyle ':omz:update' frequency 0
Updates Verbosity
您还可以使用以下设置限制更新详细程度:
12345 zstyle ':omz:update' verbose default # default update prompt zstyle ':omz:update' verbose minimal # only few lines zstyle ':omz:update' verbose silent # only errors
Manual Updates
如果您想在任何时间点更新(也许有人刚刚发布了一个新插件,而您不想更新
等一个星期?你只需要运行:
1 omz update
[!NOTE]
If you want to automate this process in a script, you should call directly theupgrade脚本,如下所示:
1$ZSH/tools/upgrade.sh看见 more options in the FAQ: How do I update Oh My Zsh?.
用途
omz update --unattended已被删除,因为它有副作用.
魔法!🎉
Uninstalling Oh My Zsh
Oh My Zsh 并不适合所有人。我们会想念你,但我们希望让这成为一次轻松的分手。
如果要卸载 oh-my-zsh,只需运行 uninstall_oh_my_zsh 从命令行。它将删除
本身并恢复您之前的 bash or zsh configuration.
How Do I Contribute To Oh My Zsh?
在您参与我们令人愉快的社区之前,请阅读 code of conduct.
我远非 Zsh 专家和怀疑有很多方法可以改进——如果你
对如何使配置更易于维护(和更快)有想法,请毫不犹豫地分叉并发送
拉取请求!
我们还需要人们来测试拉取请求。所以看一看
the open issues 并尽可能地提供帮助。
See Contributing 了解更多详情。
Do Not Send Us Themes
我们暂时有(超过)足够的主题。请将您的主题添加到
external themes wiki 页面。
Contributors
Oh My Zsh 拥有一个充满活力的社区,由快乐的用户和令人愉快的贡献者组成。没有所有的时间和帮助
从我们的贡献者那里,它不会那么棒。
非常感谢!
Follow Us
我们在社交媒体上:
Merchandise
我们有
stickers, shirts, and coffee mugs available
让你炫耀你对 Oh My Zsh 的热爱。再次,您将成为全城的话题!
License
Oh My Zsh 在 MIT license.
About Planet Argon

Oh My Zsh 是由团队发起的 Planet Argon, a
Ruby on Rails development agency.
查看我们的 other open source projects.
免责声明 © 2025 - 虚宝阁
本站部分源码来源于网络,版权归属原开发者,用户仅获得使用权。依据《计算机软件保护条例》第十六条,禁止:
- 逆向工程破解技术保护措施
- 未经许可的分发行为
- 去除源码中的原始版权标识
※ 本站源码仅用于学习和研究,禁止用于商业用途。如有侵权, 请及时联系我们进行处理。