zsh 安装与配置,使用 oh-my-zsh 美化SSH终端

传统的bash功能比较简陋,且不美观。本文基于系统,安装zsh,并使用oh-my-zsh对终端进行美化。OhMyZsh是基于zsh命令行的一个扩展工具集,提供了丰富的扩展功能。

1环境配置1.1安装基本工具

安装基本工具

安装zshgitcurlsudoaptinstallzshgitcurl-y

设置默认终端为zsh(注意:不要使用sudo)。

chsh-s/bin/zsh
1.2安装oh-my-zsh

官网:。安装方式任选一个即可。

Method

Command

curl

sh-c"$(curl-fsSL)"

wget

sh-c"$(wget-O-)"

fetch

sh-c"$(fetch-o-)"

国内curl镜像

sh-c"$(curl-fsSL)"

国内wget镜像

sh-c"$(wget-O-)"

注意:同意使用Oh-my-zsh的配置模板覆盖已有的.zshrc。

1.3从.bashrc中迁移配置(可选)

如果之前在使用bash时自定义了一些环境变量、别名等,那么在切换到zsh后,你需要手动迁移这些自定义配置。

编辑zsh配置文件,并粘贴自定义配置nano~/.zshrc中国用户可以使用上的官方镜像加速下载gitclone--depth=1${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

在~/.zshrc设置ZSH_THEME="powerlevel10k/powerlevel10k"。接下来,终端会自动引导你配置powerlevel10k。

3安装插件

oh-my-zsh已经内置了git插件,内置插件可以在~/.oh-my-zsh/plugins中查看,下面介绍一下我常用的插件,更多插件可以在awesome-zsh-plugins里查看。

3.1插件推荐3.1.1zsh-autosuggestions

zsh-autosuggestions是一个命令提示插件,当你输入命令时,会自动推测你可能需要输入的命令,按下右键可以快速采用建议。效果如下:

安装方式:把插件下载到本地的~/.oh-my-zsh/custom/plugins目录。

gitclone${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting加速1gitclone${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting加速3gitclone${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
3.1.3z

oh-my-zsh内置了z插件。z是一个文件夹快捷跳转插件,对于曾经跳转过的目录,只需要输入最终目标文件夹名称,就可以快速跳转,避免再输入长串路径,提高切换文件夹的效率。效果如下:

3.1.4extract

oh-my-zsh内置了extract插件。extract用于解压任何压缩文件,不必根据压缩文件的后缀名来记忆压缩软件。使用x命令即可解压文件,效果如下:

3.1.5web-search

oh-my-zsh内置了web-search插件。web-search能让我们在命令行中使用搜索引擎进行搜索。使用搜索引擎关键字+搜索内容即可自动打开浏览器进行搜索。效果如下:

最后,记得启用所有插件。

3.2启用插件

修改~/.zshrc中插件列表为:

plugins=(gitzsh-autosuggestionszsh-syntax-highlightingzextractweb-search)

部分插件需要参考插件介绍进行安装。

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

4Tips4.1root用户

当你配置好登陆用户的zsh后,如果使用sudosu命令进入root用户的终端,发现还是默认的bash。建议在root用户的终端下,也安装onmyzsh,设置与普通用户不同的主题以便区分,插件可以使用一样的。root用户的~/.zshrc配置,仅供参考:

ZSH_THEME="ys"plugins=(gitzsh-autosuggestionszsh-syntax-highlightingzextractweb-search)为curlwgetgit等设置代理proxy(){exportALL_PROXY="socks5://127.0.0.1:1089"exportall_proxy="socks5://127.0.0.1:1089"}为curlwgetgitnpmapt等设置代理proxy(){exportALL_PROXY="http://$host_ip:10811"exportall_proxy="http://$host_ip:10811"echo-e"Acquire::https::Proxy\"http://$host_ip:10811\";"|sudotee-a/etc/apt//dev/null}sudosed-i-e'/Acquire::http::Proxy/d'/etc/apt/#sudosed-i-e'/Acquire::https::Proxy/d'/etc/apt/}

这里假设宿主机局域网http代理的端口是10811。

4.3卸载OhMyZsh

终端输入:

uninstall_oh_my_zshAreyousureyouwanttoremoveOhMyZsh?[y/N]Y

终端提示信息:

Removing~/.oh-my-zshLookingfororiginalzshconfigFound~/.~/.zshrcFound~/.zshrc--Renamingto~/.'sbeenuninstalled.
4.4手动更新OhMyZsh

OhMyZsh的自动更新提示误触关掉了解决办法

打开终端输入:

upgrade_oh_my_zsh

免责声明:本文章如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系