Ubuntu 20.04 配置 zsh

简介: Ubuntu 20.04 配置 zsh

使用 zsh 代替默认的 bash 能够很好的优化终端体验, oh-my-zsh 支持很多非常好用的功能,例如: 自动补全 , 历史命令记录 , 特殊软件命令 等等


安装zsh

$ sudo apt install zsh点击复制复制失败已复制


更改默认shell为zsh

$ chsh -s /bin/zsh点击复制复制失败已复制


注意: 需要输入密码


安装oh-my-zsh

Github 地址


方法一:自动化脚本安装

注意

自动化脚本安装可能无法安装,因为软件的下载地址为( raw.githubusercontent.com ),国内部分网络禁了这个域名。


  • 通过 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)"点击复制复制失败已复制


  • 通过 fetch 安装
$ sh -c "$(fetch -o - https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"点击复制复制失败已复制


方法二: git手动安装

Step1. clone项目到本地

$ git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh点击复制复制失败已复制


Step2. 拷贝 .zshrc 配置文件

$ cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc点击复制复制失败已复制


Step3. 重启

$ sudo reboot点击复制复制失败已复制


Step4. 下载 zsh-syntax-highlighting 插件

$ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting点击复制复制失败已复制


Step5. 下载 zsh-autosuggestions 插件

$ git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions点击复制复制失败已复制


Step6. 更改配置文件

$ vim ~/.zshrc点击复制复制失败已复制


使用 af-magic 主题

# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
ZSH_THEME="af-magic"点击复制复制失败已复制


增加插件

# Which plugins would you like to load?
# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git zsh-syntax-highlighting zsh-autosuggestions)点击复制复制失败已复制


Step7. 修复一些支持

在末尾加入:

setopt  no_nomatch # 修复通配符查找支持点击复制复制失败已复制


Step8. 加载 .zshrc 文件

$ source ~/.zshrc点击复制复制失败已复制


使用agnoster主题

Step1. 修改zsh配置

# 修改这里切换主题
#ZSH_THEME="robbyrussell"
ZSH_THEME="agnoster"
# agnoster 主题设置:隐藏当前用户
#prompt_context() {
#  DEFAULT_USER="iric"
#}
# agnoster 主题设置:只显示当前用户名
prompt_context() {
  if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
    prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
  fi
}点击复制复制失败已复制


之后加载配置:

$ source ~/.zshrc点击复制复制失败已复制


提示

使用这个主题后,应该将终端调整为黑色主题,否则会出现颜色显示问题,推荐深度终端使用 freya 主题。


Step2. 安装更纱黑体

因为 agnoster 主题使用到了一些特殊的字符,会导致乱码,因此我们需要安装终端专用字体——更纱黑体


Github地址

测试是否有乱码:

$ echo "\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699"点击复制复制失败已复制


主要看第三个输出是否为乱码即可。

首先从 GitHubclone 字体仓库,

$ git clone https://github.com/laishulu/Sarasa-Mono-SC-Nerd.git
$ cd Sarasa-Mono-SC-Nerd
$ sudo mkdir -p /usr/share/fonts/Sarasa-Mono-SC-Nerd
$ sudo cp * /usr/share/fonts/Sarasa-Mono-SC-Nerd    #复制字体文件到Linux系统中的/usr/share/fonts/Sarasa-Mono-SC-Nerd文件夹中
$ sudo mkfontscale      # 生成字体的索引信息
$ sudo mkfontdir        # 生成字体的索引信息
$ sudo fc-cache -fv     # 更新字体缓存点击复制复制失败已复制


重启!

接下来设置深度终端的字体为 Sarasa Mono SC Nerd ,如下所示:

深度终端设置字体为更纱黑体.png


提示

系统默认终端的字体找不到这个。。。


安装powerline字体(备用)

Github地址

powerline 字体与更纱黑体是互补关系,也是 agnoster 主题推荐的字体,但是不如更纱黑体好用,因为其效果为:

powerline字体终端效果.png


明显需要自己调整才能用。

$ sudo apt install fonts-powerline
#刷新字体缓存
$ sudo fc-cache -vf
目录
相关文章
|
5月前
|
Ubuntu
Ubuntu配置Udev规则固定设备口
本文介绍了如何在Ubuntu系统中通过配置udev规则来固定设备的端口,详细说明了如何查看设备信息、创建udev规则文件、设置设备权限,并加载及重启udev规则以应用更改。
304 0
Ubuntu配置Udev规则固定设备口
|
2月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
65 2
|
3月前
|
网络协议 Ubuntu 网络安全
|
3月前
|
消息中间件 监控 Ubuntu
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
96 3
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
|
3月前
|
资源调度
Ubuntu22.04静态ip配置+yarn build后显示内存超限,变异失败
Ubuntu22.04静态ip配置+yarn build后显示内存超限,变异失败
50 2
Ubuntu22.04静态ip配置+yarn build后显示内存超限,变异失败
|
3月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
639 3
|
4月前
|
Ubuntu 网络安全 开发工具
Ubuntu19.04的安装过程详解以及操作系统初始化配置
本文详细介绍了Ubuntu 19.04操作系统的安装过程、初始化配置、网络设置、软件源配置、SSH远程登录以及终端显示设置。
131 1
Ubuntu19.04的安装过程详解以及操作系统初始化配置
|
4月前
|
存储 Prometheus 监控
在Ubuntu系统上安装与配置Prometheus的步骤
通过以上步骤,您应该已经成功在Ubuntu系统上安装并配置了Prometheus。您现在可以开始使用Prometheus收集和分析您的系统和应用程序的指标数据了。
252 1
|
3月前
|
Ubuntu 网络协议 Linux
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
136 0
|
4月前
|
Ubuntu Oracle 关系型数据库
Oracle VM VirtualBox之Ubuntu 22.04LTS双网卡网络模式配置
这篇文章是关于如何在Oracle VM VirtualBox中配置Ubuntu 22.04LTS虚拟机双网卡网络模式的详细指南,包括VirtualBox网络概述、双网卡网络模式的配置步骤以及Ubuntu系统网络配置。
391 3