当前位置: 首页 > news >正文

增强版 bash “zsh“

zsh(Z Shell)是 Bash 的增强版,提供了更强大的自动补全、主题定制、语法高亮等功能,尤其通过 Oh My Zsh 框架可以快速美化终端并扩展功能。以下是 Ubuntu 下配置和使用 zsh 的详细指南:


一、安装 zsh

1. 检查是否已安装
zsh --version

如果未安装,会提示 Command 'zsh' not found

2. 安装 zsh
sudo apt update
sudo apt install zsh
3. 验证安装
zsh --version
# 输出示例:zsh 5.8.1 (x86_64-ubuntu-linux-gnu)

二、将 zsh 设为默认 Shell

1. 确认 zsh 路径
which zsh
# 输出示例:/usr/bin/zsh
2. 修改默认 Shell
chsh -s $(which zsh)

输入当前用户密码后,需注销并重新登录或重启终端生效。

3. 验证默认 Shell
echo $SHELL
# 输出应为:/usr/bin/zsh

三、安装 Oh My Zsh(推荐)

Oh My Zsh 是一个开源框架,提供大量主题、插件和便捷配置。

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

安装完成后,终端会自动切换到 zsh 并显示欢迎界面。

2. 手动安装(备选)

如果网络问题导致安装失败,可手动下载:

git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
source ~/.zshrc

四、配置 zsh

1. 主题定制

Oh My Zsh 默认使用 robbyrussell 主题,修改主题步骤如下:

  1. 编辑 ~/.zshrc
    nano ~/.zshrc
    
  2. 找到 ZSH_THEME="robbyrussell",修改为其他主题(如 agnosterpowerlevel10k):
    ZSH_THEME="agnoster"  # 示例:使用 agnoster 主题
    
  3. 保存并退出(Ctrl + O → 回车 → Ctrl + X)。
  4. 使配置生效:
    source ~/.zshrc
    
2. 推荐主题
  • agnoster:需安装 Powerline 字体(见下文)。
  • powerlevel10k:高度可定制的主题。
    • 安装:
      git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
      
    • ~/.zshrc 中设置:
      ZSH_THEME="powerlevel10k/powerlevel10k"
      
    • 运行配置向导:
      p10k configure
      
3. 插件配置

Oh My Zsh 默认启用 git 插件,可添加更多实用插件:

  1. 编辑 ~/.zshrc

    nano ~/.zshrc
    
  2. 找到 plugins=(git),修改为:

    plugins=(git zsh-syntax-highlighting zsh-autosuggestions)
    
    • 常用插件
      • zsh-syntax-highlighting:命令语法高亮。
      • zsh-autosuggestions:根据历史命令自动补全。
      • extract:一键解压各种压缩文件。
      • colored-man-pages:手册页彩色显示。
  3. 安装插件(部分插件需手动安装):

    • 语法高亮和自动补全:
      git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
      git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
      
  4. 使配置生效:

    source ~/.zshrc
    

五、解决常见问题

1. 主题显示乱码(如 agnoster)

原因:缺少 Powerline 字体。

解决方案

  1. 安装 Powerline 字体:
    sudo apt install fonts-powerline
    
  2. 或手动安装(推荐):
    • 下载字体:https://github.com/powerline/fonts
    • 解压并安装:
      git clone https://github.com/powerline/fonts.git
      cd fonts
      ./install.sh
      
  3. 修改终端字体:
    • 打开终端设置 → 首选项 → 字体 → 选择 Powerline 字体(如 Meslo LG S DZ Regular for Powerline)。
2. 命令补全不生效

解决方案

  1. 确保插件已正确安装并启用(如 zsh-autosuggestions)。
  2. 检查 ~/.zshrcplugins 列表是否包含插件名。
  3. 重启终端或运行:
    source ~/.zshrc
    
3. 回退到 Bash

如果不想使用 zsh,可切换回 Bash:

chsh -s /bin/bash

注销后生效。


六、高级技巧

1. 自定义别名

编辑 ~/.zshrc,在文件末尾添加别名:

alias ll='ls -alF'
alias gs='git status'
alias ga='git add .'

使配置生效:

source ~/.zshrc
2. 共享历史记录

~/.zshrc 中添加:

setopt SHARE_HISTORY          # 共享所有终端的历史记录
setopt INC_APPEND_HISTORY    # 实时添加历史记录
setopt HIST_IGNORE_DUPS      # 忽略重复命令
3. 启用通配符扩展

~/.zshrc 中添加:

setopt EXTENDED_GLOB          # 启用高级通配符(如 `**/*.txt`)

七、卸载 zsh 和 Oh My Zsh

1. 卸载 Oh My Zsh
uninstall_oh_my_zsh
2. 卸载 zsh
sudo apt remove zsh
3. 恢复默认 Shell
chsh -s /bin/bash

总结

  • 安装 zshsudo apt install zsh + chsh -s /usr/bin/zsh
  • 安装 Oh My Zsh:一键脚本或手动克隆。
  • 主题推荐agnosterpowerlevel10k(需 Powerline 字体)。
  • 插件推荐zsh-syntax-highlightingzsh-autosuggestions
  • 故障排查:字体乱码、插件不生效等问题。

通过配置 zsh,您可以获得更高效、美观的终端体验。如需进一步定制,可参考 Oh My Zsh 官方文档。

http://www.dtcms.com/a/430825.html

相关文章:

  • 图数据库:基于历史学科的全球历史知识图谱构建,使用Neo4j图数据库实现中国历史与全球历史的关联查询。
  • conda建立虚拟环境,并在jupyter notebook中显示,查看与已安装包是否冲突
  • 美食网站策划书新网站如何让百度收录
  • [创业之路-642]:新质生产力、硬科技与数字经济深度融合
  • 今日分享 浮点数二分
  • DataTool.vip官网入口 - 多平台视频与音频免费下载器工具
  • 文心雕龙:DIFY 工作流驱动的Word自动化生成与规范排版方案
  • asp sql做学生信息网站中国建设银行演示网站
  • windows10 系统添加第二块硬盘(解决硬盘盘符丢失问题)
  • java-代码随想录第48天|739. 每日温度、496.下一个更大元素 I、503.下一个更大元素II
  • 在嘉立创的泰山派上也能运行Easysearch
  • JSP 点击量统计
  • 应用网站如何做外贸网站建设哪里做得好
  • Kubernetes证书管理实战:cert-manager部署与CRD导出
  • [Java]PTA: jmu-Java-02基本语法-08-ArrayList入门
  • 网站建设背景及目的搜索优化的培训免费咨询
  • 2012 年真题配套词汇单词笔记(考研真相)
  • Ubuntu20.04 按照飞浆paddle 3.2遇到的问题
  • 网站建设推荐郑国华做网站ps图片都是多大
  • 探索 Docker/K8s 部署 MySQL 的创新实践与优化技巧
  • 线程属性的相关设置详解
  • 深圳公明网站建设桂林北站到阳朔
  • maven的概述以及在mac安装配置
  • 【复习】计网强化第一章
  • 【微信公众平台】小程序如何查找菜单?如何通过自定义的菜单路径生成小程序二维码?小程序二维码指定生成
  • 瑞萨M85内核芯片再出1GHz旗舰双核新品RA8T2,两个千兆以太网MAC,集成EtherCAT从机接口,面向高端电机控制
  • 海洋公园网站建设方案网站开发加设计要多少钱
  • KingbaseES 的 SQL Server 兼容性测试
  • 基于ps2021实现1寸相纸的打印
  • [论文阅读] AI + 软件工程 | 从“事后补救”到“实时防控”,SemGuard重塑LLM代码生成质量