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

最新文章

  1. PhotoShop算法原理解析系列 - 风格化---》查找边缘。
  2. 2016 ccpc 网络选拔赛 F. Robots
  3. Thinkphp .htaccess 与 httpd.ini文件重定向转换问题
  4. [LintCode] Paint House II 粉刷房子之二
  5. 《ArcGIS Engine+C#实例开发教程》第二讲 菜单的添加及其实现
  6. 蜗牛爱课 -- iOS 设计模式之模板模式
  7. HTML 学习笔记 JQuery(表单,表格 操作)
  8. spring mvc 框架校验常用注解
  9. spring和springboot
  10. 【八】jqeury之click事件[添加及删除数据]
  11. Iptables-redhat/centos
  12. Codeforces 374C - Inna and Dima
  13. 编写python扩展
  14. springmvc 笔记一
  15. PAT 乙级 1037 在霍格沃茨找零钱(20)C++版
  16. nginx client ip配置
  17. SpaceVim 语言模块 erlang
  18. PAT 天梯赛 L1-021. 重要的话说三遍 【水】
  19. 初步学习pg_control文件之六
  20. go语言,第三方包相对路径导入包引起的问题及解决方案(goquery)

热门文章

  1. sssssss
  2. 修改\Servlet和Jsp模板的方法
  3. 【转】Keepalived无法绑定VIP故障排查经历
  4. OSGI框架—HelloWorld小实例
  5. Linux下桥接模式详解一
  6. myeclipse中更改web项目在tomcat中部署的路径
  7. Spring Bean声明周期
  8. MySQL协议分析(2)
  9. android 弹出带按钮的对话框
  10. js null, undefined, NaN, ‘’, false, 0, ==, === 全验证