Oh My Zsh 除了为我们提供快捷的命令行操作之外,还提供了强大丰富的插件机制,每个社区贡献者都可以贡献自己的插件,让整个生态体系更加丰富完善。今天给大家介绍了一下它的实用工具类插件。

前面我们分别介绍过了 Oh My Zsh 的基本用法和它的 git 插件,有兴趣的同学也可以查看前面的文章:

Oh My Zsh 插件篇 - git

http://swiftcafe.io/2015/11/29/omz-git/

你好,Oh My Zsh - 社区力量全新方式定义命令行

http://swiftcafe.io/2015/10/31/cafe-time-omz/

web-search

简单回顾后,我们进入这次的主题。首先我们介绍一个叫做 web-search 的插件。它能让我们在命令行中使用搜索引擎进行搜索。比如  google swift 这个命令就可以使用 Google 搜索 swift 关键字。

web-search 插件在默认情况下没有开启,所以我们需要做一点小工作把它打开。

  1. 打开 ~/.zshrc 文件。

  2. 找到  plugins=(git) 这行定义。

  3. 把它修改成  plugins=(git web-search)

然后重新开启一个命令行窗口我们就可以使用 web-content 的功能了。

我们可以使用 google 搜索:

google swift 学习

这样会打开 google 搜索 “swift 学习” 这个关键字。

web-content 同样集成了 baidu, bing 这些搜索引擎:

baidu swift 学习
bing 天气预报

只需在命令行中输入要搜索的关键字和搜索引擎,就可以进行搜索了,还是很方便的。

last-working-dir

last-working-dir 插件,可以记录上一次退出命令行时候的所在路径,并且在下一次启动命令行的时候自动恢复到上一次所在的路径。这一切不需要我们进行任何操作,全部都是自动完成的。只需要在 .zshrc 文件中将插件开启即可。

catimg

catimg 这个命令将图片文件的内容输出到命令行, 比如:

catimg swift.png

大家可以用自己的图片尝试一下。

encode64

encode64 是一个 Base64 编码的插件,可以让大家很方便的调试编码过程,使用也很简单:

$ encode64 some_string
=> c29tZV9zdHJpbmc=

urltools

同样的,urltools 还提供了 URL 编码的机制,我们可以使用 urlencode 命令对 url 进行编码:

urlencode http://google.com
http%3A%2F%2Fgoogle.com

还对应了一个 urldecode 命令来对 url 进行解码。

urldecode http%3A%2F%2Fgoogle.com
http://google.com

wd

wd 插件是我比较喜欢的一个,它的作用就是能够快速的切换到常用的目录。我们用命令行时经常会遇到这样一种情况,我们常用的目录就那么几个,而这些目录有时候会再很深的层级中。使用 cd 命令在这些深层级目录中切换就比较耗费时间了。

wd 插件正是为了解决这个问题,比如我们有一个常用的目录 /usr/nginx/www/html,我们首先进入到这个目录中,然后输入

wd add web

这个命令相当于给当前目录做了一个标识,标识名叫做  web ,我们下次如果再想进入这个目录,只需输入:

wd web

这样就可以完成目录切换了,非常方便。

它的原理并不复杂,它维护了一个标识和实际路径的映射表,我们使用 wd add 命令可以添加新的映射,可以使用 wd rm 命令删除已有的映射,还可以使用 wd show 命令查看现有的映射。

这个简单的插件解决了一个很实际的问题,推荐使用。 wd 插件的更多内容可以查看它的 github 主页:  https://github.com/mfaerevaag/wd

Oh My Zsh 插件篇 - 实用工具的更多相关文章

  1. [Linux实用工具]munin-node插件配置和插件编写

    前面介绍了2篇munin使用的相关文章: [Linux实用工具]Linux监控工具munin的安装和配置 [Linux实用工具]Linux监控工具munin的展示(Nginx)   这次介绍一下mun ...

  2. .NET 高效开发之不可错过的实用工具(第一的当然是ReSharper插件)

    工欲善其事,必先利其器,没有好的工具,怎么能高效的开发出高质量的代码呢?本文为 ASP.NET 开发者介绍一些高效实用的工具,包括 SQL 管理,VS插件,内存管理,诊断工具等,涉及开发过程的各个环节 ...

  3. NET 高效开发之不可错过的实用工具(第一的当然是ReSharper插件)

    工欲善其事,必先利其器,没有好的工具,怎么能高效的开发出高质量的代码呢?本文为 ASP.NET 开发者介绍一些高效实用的工具,包括 SQL 管理,VS插件,内存管理,诊断工具等,涉及开发过程的各个环节 ...

  4. 十款让 Web 前端开发人员更轻松的实用工具

    这篇文章介绍十款让 Web 前端开发人员生活更轻松的实用工具.每个 Web 开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具, ...

  5. 欲善事先利器-IEAD插件篇

    工欲善其事,必先利其器,好鞋踢好球是非常合乎逻辑的事情. --<长江七号> 同样的开场白,不一样的酒,不一样的故事. 上篇<欲善事先利器--系统篇>已经推荐了一些个人常用的效率 ...

  6. Bootstrap<基础十> 响应式实用工具

    Bootstrap 提供了一些辅助类,以便更快地实现对移动设备友好的开发.这些可以通过媒体查询结合大型.小型和中型设备,实现内容对设备的显示和隐藏. 需要谨慎使用这些工具,避免在同一个站点创建完全不同 ...

  7. 10款让WEB前端开发人员更轻松的实用工具

    这篇文章介绍10款让Web前端开发人员生活更轻松的实用工具.每个Web开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具,所以如 ...

  8. .Net 高效开发之不可错过的实用工具(转)

    .Net 高效开发之不可错过的实用工具(转) 本文摘自: http://www.cnblogs.com/powertoolsteam/p/5240908.html#3372237 Visual Stu ...

  9. 定制Eclipse IDE之插件篇(二)

    上文回顾:定制Eclipse IDE之插件篇(一) 延续上一篇的插件篇,这一篇将会讲到一个最关键的插件aptana. 一.aptana插件 官方的解释我就不说了,从下面图可以看到插件提供了什么功能,列 ...

随机推荐

  1. oracle导入sql文件

    oracle导入sql文件: 1.进入到sql文件目录下,登录需要导入文件的用户 打开cmd,输入以下命令,进入oracle, sqlplus username/password username:需 ...

  2. Spark源码分析 – Dependency

    Dependency 依赖, 用于表示RDD之间的因果关系, 一个dependency表示一个parent rdd, 所以在RDD中使用Seq[Dependency[_]]来表示所有的依赖关系 Dep ...

  3. 【opencv】相机标定程序内存溢出

    运行相机内参标定程序出现内存溢出的错误 opencv的alloc.cpp报cv::OutOfMemoryError 因为同时开了多个线程,每个线程标定一台相机,每个线程都会imread读入所有标定图片 ...

  4. js获取浏览器信息及版本(兼容IE)

    获取浏览器信息方法有很多种,但是要是兼容ie旧版本就有点麻烦了,因为很多方法在旧版本ie是不支持的,所以ie我做了单独处理,但是目前还有小问题,就是想显示QQ浏览器,搜狗浏览器..这样的,这样还实现不 ...

  5. NoSQL文章

    MongoDB Bugsnag的MongoDB分片集群使用经验

  6. git学习------> Gitlab如何进行备份恢复与迁移?

    前段时间,在某台CenterOS服务器上搭建了Gitlab环境,并且大家陆陆续续的都把代码从svn迁移到了gitlab,但是之前的CenterOS服务器并不是搭建在公司的机房环境,而是搭建在办公室的某 ...

  7. JVM内存四大类型:Heap,Stack,Contant,DirectMemory等

    Stack属于栈的区域,属于每条线程私有的. 方法区和本地方法栈有很大的不同,方法区是用Java级别角度做的代码,本地方法栈指向的是C/C++. Java开发,对象就在堆中,一般而言,堆中只有对象. ...

  8. C的指针疑惑:C和指针8数组

    ]; ]; 上面申明两个数组,不能进行以下赋值 b = a; 你不能使用赋值符把一个数组的所有元素复制给另一个数组,必须使用一个循环,每次复制一个元素 数组和指针 ]; int *b; 声明一个数组, ...

  9. 跟我学Makefile(一)

    1.首先,把源文件编译生成中间代码文件,Windows下.obj文件,unix下.o文件,即Object File.这个动作叫编译(compile) 把大量的Object File合并执行文件,叫做链 ...

  10. PAT 1052 Linked List Sorting [一般]

    1052 Linked List Sorting (25 分) A linked list consists of a series of structures, which are not nece ...