Oh-My-Zsh!提高你CLI(Command-line interface )的神奇工具 - Ubuntu教程

简介: 原文更新地址https://github.com/shellhub/blog/issues/25Oh-My-Zsh!提高你CLI(Command-line interface)的神奇工具 - Ubuntu教程1_dcfi6nexitpjcfpgdloonw我是命令行界面的忠实粉丝.

原文更新地址

https://github.com/shellhub/blog/issues/25

Oh-My-Zsh!提高你CLI(Command-line interface
)的神奇工具 - Ubuntu教程

img_41871a50e21fe23452e9bf324e7ddd9a.png
1_dcfi6nexitpjcfpgdloonw

我是命令行界面的忠实粉丝......我不喜欢使用我的电脑鼠标!这促使我寻找出色的工具来增强我在CLI上的用户体验,一次偶然的机会机会在YouTube上观看了国外YouTuber使用该工具,促使我对他产生了兴趣.本教程基于Ubuntu Linux,其他操作系统差不多

by the way,关注我的YouTube频道呗

https://www.youtube.com/c/CSWikiTech

以下是oh-my-zsh部分功能

  • 命令验证
  • 在所有正在运行的shell中共享命令历史记录
  • 拼写纠正
  • 主题提示(Agnoster,RobbyRussell,......)
  • 目录历史
  • 通过zshenv,zprofile,zshrc,zlogin和zlogout启动/关闭脚本
  • 强大的自动完成功能。您可以使用TAB键浏览不同的选项,然后使用enter键选择正确的文件夹。例如Bash会打印所有选项。
img_bcca59dfc81c33cba3f1d5eed886b061.gif
peek 2018-08-31 09-45
  • 添加插件:例如Git插件包含大量有用的Git别名。 此插件显示活动分支并提供有关Git状态的可视反馈:
img_182df4aa4d9245319a145d7335091a67.gif
peek 2018-08-31 09-51
  • 绿色:如果没有发生变化的分支
  • 黄色:未跟踪文件
  • 带有加号图标的黄色:准备提交的文件

安装指南

我在我的Linux Mint上执行此安装指南。为了向您展示Oh-My-Zsh的基本功能,我将安装Git插件(Git-core)。此插件提供有关项目的Git状态的可视反馈。

  1. 安装必备软件包
$ sudo apt install git-core zsh
  1. 根据官方脚本安装Oh-My-Zsh
# 通过curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
#通过wget
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
  1. 安装Powerline字体以使用图标为CLI增添趣味
$ sudo apt install fonts-powerline
  1. 将主题从'robbyrussell'改为'agnoster'为传奇的Oh-My-Zsh主题
$ vim ~/.zshrc

想要看到修改后的主题结果,执行下面命令

$ source ~/.zshrc

[图片上传失败...(image-1ef794-1536030210992)]

  1. 现在的主题提示信息太长了,我们去掉用户名和主机名
img_594c4ebeb12b496c03f5918c0cc6d43f.gif
peek 2018-08-31 10-16
  1. 修改默认shell,这样下次打开Terminal的时候就默认使用zsh而不是bash
$ chsh -s $(which zsh)

安装插件

所有插件都列在Plugins,自定义插件可以安装在〜/.oh-my-zsh/custom/plugins中。要使用插件,只需将其添加到〜/.zshrc文件中的插件列表即可。明智地添加,因为太多的插件会减慢shell的启动速度。插件之间使用空格分割。

colored-man-pages

在这个例子中,我安装了一个有用的插件,为你的手册页提供颜色突出显。


img_1ee834de95f254f25a80311149d91b4a.gif
peek 2018-08-31 10-29

zsh-syntax-highlighting

另一个很棒的插件是shell的语法高亮。除此之外,此插件还能够验证命令的正确性


img_676ca570be6fd4c3cc0f2fd283d9f7e7.png
screenshot from 2018-08-31 10-38-54
# 安装
cd /home/shellhub/.oh-my-zsh/custom/plugins
git clone https://github.com/zsh-users/zsh-syntax-highlighting
# 添加到.zshrc配置文件中的plugins中
vim ~/.zshrc

# 例子
plugins=(
  git
  autojump
  colored-man-pages
  zsh-syntax-highlighting
  zsh-autosuggestions
)

zsh-autosuggestions

您还可以使用zsh-autosuggestions来完成命令。它根据您的命令历史记录建议命令。很有用!要选择建议的命令,请按向右箭头键。

img_1482fb457876de095fa87cac9e1e7189.png
screenshot from 2018-09-04 08-50-25

安装方式和zsh-syntax-highlighting一样

$ git clone https://github.com/zsh-users/zsh-autosuggestions

然后添加zsh-syntax-highlighting到插件列表中(vim ~/.zshrc)

autojump

autojump可以实现快速跳转到目标目录,如下所示

img_7337a9d5b5c9362e4dd61400e3d4fc3d.gif
peek 2018-09-04 10-29

然后别忘记添加到~/.zshrc配置文件中

vim ~/.zshrc

关注一下别名

目录历史

Oh-My-Zsh会自动记住您访问过的最后20个目录。您可以使用dirs -vd来按时间顺序列出历史记录。

您可以使用cd +1转到上一个目录,依此类推,如下图我们还可以直接输入数字进行跳转到对应的目录

img_4851fec5fc6fc6829582f11b0134b1d5.png
screenshot from 2018-09-04 09-03-32

其他有趣的别名

/ -> cd /
~ -> cd ~
.. -> cd ..
... -> cd ../..
.... -> cd ../../..

我相信你已经找到规律了吧

take test_folder # 创建一个文件夹并进入这个文件夹,效果和下面类似
mkdir test_folder && cd test_folder
take folder1/folder2/folder3
x # 解压tar, bz2, rar, gz, tbz2, tgz, zip, Z, 7z各种压缩文件

更新和卸载

更新

upgrade_oh_my_zsh

卸载

uninstall_oh_my_zsh

更多学习资源

总结

Oh-My-Zsh太爽了

目录
相关文章
|
2月前
|
Ubuntu
百度搜索:蓝易云【Ubuntu开机自启服务systemd.service配置教程】
现在,你的服务将在Ubuntu开机时自动启动,并在之后的启动中持续运行。记得根据你的实际需求修改 `your_service_name.service`文件中的相关信息。
54 2
|
2月前
|
监控 Ubuntu 安全
Ubuntu开启FTP服务教程
在Ubuntu服务器上配置FTP服务是一个常见的需求,无论是用于文件分享、网站管理还是数据备份。FTP(文件传输协议)是一种用于在网络上传输文件的协议,它可以让用户通过身份验证下载或上传文件。本文将指导您如何在Ubuntu系统上安装和配置FTP服务器,以及如何管理用户权限来保证服务器的安全性。
119 0
|
3月前
|
Ubuntu
百度搜索:蓝易云【ubuntu 16.04升级到18.04教程】
请注意,在升级过程中可能会出现一些问题,例如软件包依赖关系或配置文件冲突。在升级前,建议备份重要数据,以免数据丢失。如果你在升级过程中遇到问题,可以查看相关错误信息并尝试解决。
44 2
|
3月前
|
Ubuntu 数据安全/隐私保护
百度搜索:蓝易云【ubuntu安装qemu教程】
现在,你已经成功在Ubuntu系统中安装了QEMU。你可以使用QEMU来模拟x86、ARM等体系结构的虚拟机,并在其中运行不同的操作系统。请注意,QEMU的使用可能涉及到一些复杂的参数和配置,具体使用方法可以参考官方文档或相关教程。
51 1
|
3月前
|
Ubuntu Linux 数据安全/隐私保护
百度搜索:蓝易云【ubuntu系统安装gcc-7、g++-7教程】
请注意,以上步骤是针对Ubuntu系统的。如果你使用的是其他Linux发行版,请相应地调整命令。
108 6
|
3月前
|
Ubuntu 关系型数据库 MySQL
百度搜索:蓝易云【ubuntu下Mysql安装与root密码重置教程】
请注意,以上步骤是针对Ubuntu系统的。如果你使用的是其他Linux发行版,请相应地调整命令。
110 1
|
3月前
|
Ubuntu
百度搜索:蓝易云【Ubuntu删除多余内核教程】
现在,你已经成功地删除了Ubuntu系统中多余的旧内核。请谨慎删除内核,确保保留当前正在使用的稳定内核以及至少一个备用内核,以防止出现意外问题。
105 2
|
3月前
|
Ubuntu 网络安全
百度搜索:蓝易云【ubuntu系统ufw开放端口教程】
现在,你已经成功在Ubuntu系统中使用ufw开放了指定的端口。请确保只开放必要的端口,并注意网络安全。
77 3
|
3月前
|
Ubuntu 定位技术
百度搜索:蓝易云【ubuntu全版本通用换源教程,超详细教程】
现在,你已经成功地更换了Ubuntu系统的软件源。新的源地址将提供更快的下载速度和更稳定的软件包更新。
41 2
|
3月前
|
Ubuntu
百度搜索:蓝易云【ubuntu更新源教程】
现在,你已经成功更新了Ubuntu系统的软件源列表,可以确保你安装的软件包是最新的版本。建议在安装软件或系统更新之前先执行此操作,以获取最新的软件信息。
33 5