Linux 安装 Oh My Zsh

news2025/3/16 2:21:42

1. 简介

Zsh(Z Shell)是一款功能强大的 Shell,相比 Bash 提供了更强的 自动补全、命令高亮、插件支持 等功能。而 Oh My Zsh 是一个 Zsh 的增强管理工具,让你可以轻松安装插件和主题,极大提高开发效率。

本教程将详细介绍如何在 Linux 上安装 Oh My Zsh,并配置 命令补全和语法高亮


2. 安装 Zsh

Oh My Zsh 依赖于 Zsh,因此需要先安装 Zsh。

2.1 安装 Zsh

如果系统没有安装 Zsh,可以使用以下命令安装。

Ubuntu / Debian

sudo apt update
sudo apt install zsh -y

CentOS / RHEL

sudo yum install zsh -y

Arch Linux

sudo pacman -S zsh --noconfirm

在这里插入图片描述

2.2 检查系统是否已安装 Zsh

zsh --version

如果输出类似 zsh 5.8,说明 Zsh 已安装,可以跳过安装步骤。

2.3 切换默认 Shell 为 Zsh

chsh -s $(which zsh)

然后 注销并重新登录,或者运行 zsh 进入 Zsh。


3. 安装 Oh My Zsh

Oh My Zsh 官方提供了自动安装脚本。

3.1 在线安装(推荐)

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

如果 curl 命令不存在,可以安装它:

sudo apt install curl -y   # Ubuntu / Debian
sudo yum install curl -y   # CentOS / RHEL

3.2 离线安装(适用于无法访问 GitHub 的环境)

如果你的服务器无法直接访问 GitHub,可以先在 其他电脑 上下载 Oh My Zsh,然后手动安装。

步骤 1:在 可以联网的电脑 上下载 Oh My Zsh:

git clone --depth=1 https://github.com/ohmyzsh/ohmyzsh.git ~/ohmyzsh

步骤 2:将 ~/ohmyzsh 目录 拷贝到目标服务器(比如使用 SCP):

scp -r ~/ohmyzsh user@your_server:/home/user/

步骤 3:在目标服务器上执行安装:

mv ~/ohmyzsh ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
chsh -s $(which zsh)
source ~/.zshrc

在这里插入图片描述


4. 配置 Oh My Zsh 插件(补全和高亮)

Oh My Zsh 提供了多个增强功能的插件,其中最常用的是:

  • zsh-autosuggestions:命令自动建议
  • zsh-syntax-highlighting:语法高亮
  • zsh-completions:补全增强

4.1 安装 zsh-autosuggestions(命令自动建议)

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

然后编辑 ~/.zshrc,找到 plugins=(),添加 zsh-autosuggestions

plugins=(git zsh-autosuggestions)

使配置生效:

source ~/.zshrc

4.2 安装 zsh-syntax-highlighting(语法高亮)

git clone --depth=1 https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting

同样修改 ~/.zshrc,添加插件:

plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

应用更改:

source ~/.zshrc

4.3 安装 zsh-completions(补全增强)

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

修改 ~/.zshrc,添加插件:

plugins=(git zsh-autosuggestions zsh-syntax-highlighting zsh-completions)

使配置生效:

source ~/.zshrc

在这里插入图片描述


5. 选择和配置 Zsh 主题

Oh My Zsh 自带多个主题,可以在 ~/.zshrc 里修改 ZSH_THEME 进行设置。

ZSH_THEME="robbyrussell"  # 默认主题

如果想使用 更高级的 Powerlevel10k 主题,请参考 下一篇教程

列出所有可用主题:

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

然后修改 ~/.zshrc,修改 ZSH_THEME 为你喜欢的主题:

ZSH_THEME="agnoster"

应用更改:

source ~/.zshrc

6. 常见问题

6.1 zsh: command not found: zsh

说明 Zsh 没有安装,运行以下命令安装:

sudo apt install zsh -y  # Ubuntu / Debian
sudo yum install zsh -y  # CentOS / RHEL

6.2 chsh: Warning: shell not changed

  • 可能是因为当前用户没有权限更改 Shell,可以尝试:
    sudo chsh -s $(which zsh) $USER
    
  • 或者 重新登录,然后手动运行 zsh 进入 Zsh。

7. 总结

到这里,你已经成功安装并配置了 Oh My Zsh,包括:
✅ 安装 Zsh 并设置为默认 Shell
✅ 安装 Oh My Zsh
✅ 配置 命令补全(zsh-completions)、自动建议(zsh-autosuggestions)、语法高亮(zsh-syntax-highlighting)
✅ 修改 Oh My Zsh 主题

🚀 下一篇教程:安装和配置 Powerlevel10k 主题,打造终极终端体验!

补充:

  • 设置自动更新,在 ~/.zshrc 里解开这两行的注释
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2315747.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

方差,协方差及协方差矩阵的计算

1.方差 方差是用来衡量一组数据的离散程度,数序表达式如下: σ 2 1 N ∑ i 1 N ( x i − μ ) 2 \sigma^2\frac1N\sum_{i1}^N(x_i-\mu)^2 σ2N1​i1∑N​(xi​−μ)2 σ 2 σ^2 σ2表示样本的总体方差, N N N 表示样本总数, x i x _i xi​…

DeepSeek-R1思路训练多模态大模型-Vision-R1开源及实现方法思路

刚开始琢磨使用DeepSeek-R1风格训练多模态R1模型,就看到这个工作,本文一起看看,供参考。 先提出问题,仅靠 RL 是否足以激励 MLLM 的推理能力? 结论:不能,因为如果 RL 能有效激励推理能力&#…

Unity 创建签名证书、获取签名证书信息,证书指纹

目录 一:创建签名证书 二:自动填写密码 ​编辑 三:获取签名证书的信息 后言 👑👑👑 一:创建签名证书 首先确保Unity是安卓打包,然后按图操作 会打开下图页面 选择你要创建到的…

在AIStudio飞桨星河社区一键部署DeepSeek-r1:70b模型

随着DeepSeek的火热,市面上出现大量的第三方的API服务区,但是对于对安全、隐私、控制有一定需求的用户,还是会希望能够自主部署DeepSeek 。 实践下来,用自己的机器部署是一条解决之道,但是推理起来,cpu和内…

机器学习算法分类及应用场景全解析

在机器学习的学习过程中,具备归类思想至关重要。机器学习涉及众多算法、数据类型及应用场景,归类能让我们清晰梳理知识体系。比如将算法按学习方式分为有监督、无监督等,按任务分类分为分类任务、回归任务和生成任务。通过归类,能…

GNU Nano编辑器中,怎样保存并退出

当出现git commit的提交内容需要修改时,使用git commit --amend进行解决。 但是在修改提交的内容时,弹出了GNU Nano的编辑器 修改完毕后,使用ctrlxd的组合键退出 输入Y后,将退出编辑器,操作完成

个人居家 Web移动端 局域网 远程控制电脑 工具 PC遥控器拿去玩吧

想远程电脑 换个电影,切个歌,随有无线键鼠,但解决不了离屏幕较远 看不清鼠标指针和键入内容。 看似简单的事情,但对周末躺下沙发的码农来说,就再也起不了身了。 远程工具 TeamViewer、向日葵、Autodesk以及开源的RustD…

cursor中使用prettier-code formatter插件方法

cursor的"扩展"中搜索"prettier-code formatter",然后安装 点击cursor编辑器右上角“更多操作”,然后打开“配置编辑器” 按照图片进行操作,进入到editor在editor中,找“格式化“,把Format On Sav…

SpaceSync智能排班:重构未来办公空间的神经中枢

文心智能体平台可免费使用DeepSeek 满血版啦,使用DeepSeek模型创建并提交智能体,即有机会瓜分万元奖金!有这等好事还不快冲! 文心智能体官网:文心智能体平台AgentBuilder | 想象即现实 本片文章为作者参加文心智能体平…

ToB公司找客户专用|大数据获客系统

对于ToB公司而言,找到并吸引合适的潜在客户并非易事。传统的获客手段如参加行业展会、电话推销以及直接拜访等,虽然在过去取得了一定成效,但如今却暴露出诸多问题。首先,这些方法往往成本高昂,无论是时间还是金钱上的投…

Linux 文件权限类

目录 文件属性 从左到右的10个字符表示 rwx作用文件和目录的不同解释 图标: 案例实操 chmod 改变权限 基本语法 经验技巧 案例实操 拓展:可以通过一个命令查看用户列表 chown改变所有者 基本语法 选项说明 案例实操 chgrp 改变所属组 基…

在线Doc/Docx转换为PDF格式 超快速转换的一款办公软件 文档快速转换 在线转换免费转换办公软件

小白工具https://www.xiaobaitool.net/files/word-pdf/提供了一项非常实用的在线服务——将Doc或Docx格式的文档快速转换为PDF格式。这项服务不仅操作简单,而且转换效率高,非常适合需要频繁处理文档转换的用户。 服务特点: 批量转换&#x…

网络安全——SpringBoot配置文件明文加密

XTHS:第一步、XTHS:第二步、XTHS:第三步、XTHS:第四步 !就可以实现了。(但是前提,你要先对你的文本进行加密,然后按照ENC(加密文本),放到配置文件中) 一、前言…

Docker安装Kafka(内含zookeeper)

因为kafka是基于zookeeper做的,所以必须要有zookeeper 一、Zookeeper 1.拉取镜像 docker pull zookeeper:3.7.02.运行 docker run --restartalways \--log-driver json-file \--log-opt max-size100m \--log-opt max-file2 \--name zookeeper -p 2181:2181 \-v…

Netty启动源码NioEventLoop剖析accept剖析read剖析write剖析

学习链接 NIO&Netty - 专栏 Netty核心技术十–Netty 核心源码剖析Netty核心技术九–TCP 粘包和拆包及解决方案Netty核心技术七–Google ProtobufNetty核心技术六–Netty核心模块组件Netty核心技术五–Netty高性能架构设计 聊聊Netty那些事儿 - 专栏 一文搞懂Netty发送数…

【HarmonyOS Next之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(七) -> JS动画(二)

目录 1 -> 动画动效 1.1 -> 创建动画对象 1.2 -> 添加动画事件和调用接口 2 -> 动画帧 2.1 -> 请求动画帧 2.2 -> 取消动画帧 1 -> 动画动效 通过设置插值器来实现动画效果。 说明 从API Version 6 开始支持。 1.1 -> 创建动画对象 通过cre…

LINUX下的tcp协议

TCP 1. 面向数据流(流式套接字) 2. 建立连接 3. 安全可靠的传输协议 应用场景: HTTP, MQTT, FTP 三次握手:TCP建立连接时,需要进行三次握手,确保收发数据前,双方都已准备就绪。 四次挥…

Handy Multi Agent—task1:CAMEL环境配置及你的第一个Agent

目录 1.1 获取CAMEL 1.1.1 通过 PyPI 安装 1.1.2 通过源码安装 1.1.2.1 使用 Poetry 工具从源码安装 1.1.2.2 使用Conda和Pip从源码安装 1.2.2 使用API调用模型 1.2.2.1 使用语言模型 1.2.2.2 使用多模态模型 1.2.2.3 视频理解 1.2.2.4 作业1 1.2.2.5 作业2 1.1 获取…

CSS元素层叠顺序规则

CSS元素层叠顺序规则 看图说话总结: background/borderz-index(<0)blockfloatinline/inline-blockz-index(0,auto)z-index (>0)

微服务全局ID方案汇总

自增id 对于大多数系统来说&#xff0c;使用mysql的自增id当作主键再最合适不过了。在数据库层面就可以获取一个顺序的、唯一的、空间占用少的id。 自增id需要是 int、bigint这些整数类型&#xff0c;uint 支持 40 亿的数据量&#xff0c;bigint unsign&#xff08;0 &#x…