最强Linux shell工具Oh My Zsh 指南
引言
笔者已经使用zsh一年多了,发现这个东东的功能太强大了。接下来,给大家推荐一下。
以下是oh-my-zsh部分功能
- 命令验证
- 在所有正在运行的shell中共享命令历史记录
- 拼写纠正
- 主题提示(Agnoster,RobbyRussell,......)
- 目录历史
- 通过zshenv,zprofile,zshrc,zlogin和zlogout启动/关闭脚本
- 强大的自动完成功能。您可以使用TAB键浏览不同的选项,然后使用enter键选择正确的文件夹。例如Bash会打印所有选项。
- 添加插件:例如Git插件包含大量有用的Git别名。 此插件显示活动分支并提供有关Git状态的可视反馈:
- 绿色:如果没有发生变化的分支
- 黄色:未跟踪文件
- 带有加号图标的黄色:准备提交的文件
安装指南
我在我的Linux Mint上执行此安装指南。为了向您展示Oh-My-Zsh的基本功能,我将安装Git插件(Git-core)。此插件提供有关项目的Git状态的可视反馈。
- 安装必备软件包
$ sudo apt install git-core zsh
- 根据官方脚本安装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 -)"
- 安装Powerline字体以使用图标为CLI增添趣味
$ sudo apt install fonts-powerline
- 将主题从'robbyrussell'改为'agnoster'为传奇的Oh-My-Zsh主题
$ vim ~/.zshrc
想要看到修改后的主题结果,执行下面命令
$ source ~/.zshrc
- 现在的主题提示信息太长了,我们去掉用户名和主机名
- 修改默认shell,这样下次打开Terminal的时候就默认使用
zsh
而不是bash
$ chsh -s $(which zsh)
安装插件
所有插件都列在Plugins,自定义插件可以安装在〜/.oh-my-zsh/custom/plugins
中。要使用插件,只需将其添加到〜/.zshrc
文件中的插件列表即可。明智地添加,因为太多的插件会减慢shell的启动速度。插件之间使用空格分割。
colored-man-pages
在这个例子中,我安装了一个有用的插件,为你的手册页提供颜色突出显。
zsh-syntax-highlighting
另一个很棒的插件是shell的语法高亮。除此之外,此插件还能够验证命令的正确性
# 安装
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来完成命令。它根据您的命令历史记录建议命令。很有用!要选择建议的命令,请按向右箭头键。
安装方式和zsh-syntax-highlighting
一样
$ git clone https://github.com/zsh-users/zsh-autosuggestions
然后添加zsh-syntax-highlighting到插件列表中(vim ~/.zshrc
)
autojump
autojump可以实现快速跳转到目标目录,如下所示
然后别忘记添加到~/.zshrc
配置文件中
vim ~/.zshrc
关注一下别名
目录历史
Oh-My-Zsh会自动记住您访问过的最后20个目录。您可以使用dirs -v
或d
来按时间顺序列出历史记录。
您可以使用cd +1
转到上一个目录,依此类推,如下图我们还可以直接输入数字进行跳转到对应的目录
其他有趣的别名
/ -> 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:https://ohmyz.sh/
插件: https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins
主题: https://github.com/robbyrussell/oh-my-zsh/tree/master/themes/
总结
Oh-My-Zsh
太爽了
参考文档:
1 https://github.com/shellhub/blog/issues/25
最强Linux shell工具Oh My Zsh 指南的更多相关文章
- linux shell工具集合
1)判断进程是否存在,如果不存在再执行启动命令,可以避免一个脚本同时启动多份 if [ $(ps -ef |grep bastion_account.sh|grep -v grep|wc -l) - ...
- linux shell——zsh的安装与使用
Shell是在程序员与服务器间建立一个桥梁,它对外提供一系列命令,让我们得以控制服务器.常用的Bash就是Shell的一种,也是Linux下默认Shell程序.这里介绍一种更强大的.更人性化的Shel ...
- -Shell 命令行工具 Cmder Babun Zsh MD
目录 目录 Cmder:window 下增强型的 cmd + bash 简介 配置 解决中文乱码问题 添加到右键菜单 添加至环境变量 修改命令提示符号 自定义aliases Readme.md 设置c ...
- Linux Shell 文本处理工具集锦 zz
内容目录: find 文件查找 grep 文本搜索 xargs 命令行参数转换 sort 排序 uniq 消除重复行 用tr进行转换 cut 按列切分文本 paste 按列拼接文本 wc 统计行和字符 ...
- Linux Shell 文本处理工具集锦
本文将介绍Linux下使用Shell处理文本时最常用的工具:find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk:提供的例子和参数都是最常用和最为实用的: ...
- [转] Linux Shell 文本处理工具集锦
内容目录: find 文件查找 grep 文本搜索 xargs 命令行参数转换 sort 排序 uniq 消除重复行 用tr进行转换 cut 按列切分文本 paste 按列拼接文本 wc 统计行和字符 ...
- Linux Shell 文本处理工具集锦(转载)
内容目录: find 文件查找 grep 文本搜索 xargs 命令行参数转换 sort 排序 uniq 消除重复行 用tr进行转换 cut 按列切分文本 paste 按列拼接文本 wc 统计行和字符 ...
- Linux Shell 文本处理工具集锦【转】
转自:http://www.cnblogs.com/me115/p/3427319.html 内容目录: find 文件查找 grep 文本搜索 xargs 命令行参数转换 sort 排序 uniq ...
- Linux shell文本处理工具
搞定Linux Shell文本处理工具,看完这篇集锦就够了 Linux Shell是一种基本功,由于怪异的语法加之较差的可读性,通常被Python等脚本代替.既然是基本功,那就需要掌握,毕竟学习She ...
随机推荐
- 【系列专题】ECMAScript 重温系列(10篇全)
ES6 系列ECMAScript 2015 [ES]150-重温基础:ES6系列(一) [ES]151-重温基础:ES6系列(二) [ES]152-重温基础:ES6系列(三) [ES]153-重温基础 ...
- 支持100+业务线、累计发布17万次|宜信容器云的A点与B点(分享实录)
宜信公司从2018年初开始建设容器云,至今,容器云的常用基本功能已经趋于完善,主要包括服务管理.应用商店.Nginx配置.存储管理.CI/CD.权限管理等,支持100+业务线.3500+的容器运行.伴 ...
- Oracle常用函数(略微少了点 不过是自己稍微整理的)
DECODE DECODE(value ,if 1, then 1,if 2,then 2, ....,else) 解析: if 条件=1 return (value 1) if条 ...
- GHOST CMS - 配置 Config
Config For self-hosted Ghost users, a custom configuration file can be used to override Ghost's defa ...
- Python面向对象-获取对象信息type()、isinstance()、dir()
type() type()函数用于判断对象类型: >>> type(11) <class 'int'> >>> type('abc') <clas ...
- Python—脚本程序生成exe可执行程序(pyinstaller)
一.pyinstaller的简介 Python是一个脚本语言,被解释器解释执行.它的发布方式: .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的 ...
- 2019icpc上海站 打星体验,首次感想 D K代码
暑期训练以来首次参赛,体验还行吧,过程有些战战兢兢. 刚开始以为是正式队,热身赛只过了一题,有很大的压力,正赛前一天晚上才知道是打星队,有点如释重负的感觉.也幸好都是打星队,不然真的有可能打铁,虽然实 ...
- HTTP 400 与 SpringMVC的 HttpPutFormContentFilter、FormContentFilter
前端发送了一个http PUT请求,如下, json_xml: {,},,}},,},,}},},}},,},{,}],,},,}},,,,},,}},},}},,},{,}],,},,}},,},{ ...
- fastjson又被发现漏洞,这次危害可能会导致服务瘫痪
0x00 漏洞背景 2019年9月5日,fastjson在commit 995845170527221ca0293cf290e33a7d6cb52bf7上提交了旨在修复当字符串中包含\\x转义字符时可 ...
- 磁盘修复 mount: wrong fs type running e2fsck
当服务器或PC机器的硬盘在使用一段时间后,会出现无法使用正常进行使用: 1. 当将文件系统挂载到指定的目录的时候,会出现mount 失败,如下图: [root@template ~]# mount / ...