• 首页
  • javascript
  • zsh 有哪些方便快捷的功能,提升shell输入体验 优点简介(不断补充)

zsh 有哪些方便快捷的功能,提升shell输入体验 优点简介(不断补充)

这几天宅在家里享受胜利日的假期,连续2天下雨,出不去....

无聊之时会玩一玩 zsh ,确实是个好东东,作为一个攻城狮的你,必须要去玩转一下.


之前介绍了 如何配置利用oh-my-zsh 来配置你的zsh  及  zsh 通过修改配置文件,皮肤模板来定制化属于你的shell 

上面的传送链接你可以直接点击查看 (这句话好像是废话,忽略吧)


今天分享几个 zsh 使用小技巧:


  1. 如果你不知道该如何使用 zsh ,那么你之前如何使用的 bash ,现在就怎么使用.

    没错,这就是一个技巧.

    zsh 360°无死角全兼容 bash ,之前怎么写,现在就怎么写. 这才叫酸爽!

  2. 按 tab 键补全

    之前在 bash 环境下.如果我的用户目录下有个 code 文件夹.

    那么,我我输入 co  打tab 键会默认补全成 code 

    这个功能 zsh 下也实用,而且更高级的是,它不仅仅是匹配第一项 (bash 下不论你按多少下 tab ,始终匹配第一项补全 code )

    zsh 会匹配当前目录下的所有 co 开头的文件夹,每按一次 tab ,就向后依次补全候选项.

    什么意思:

    就是我用户目录下有2个 co 开头的文件夹  code 和  core 

    当我输入 co 后,按 tab 第一次补全 code ,按第二次就会补全 core ,第三次又是 code ,依次循环.

  3. 首字母匹配

➜  /Users/zhangzhi  >cd c/k/k/t/c

当我的 zsh 终端输入这些打头字母时. 按下 tab ,神奇的一幕出现了 ,自动帮我补全了如下路径.

➜  /Users/zhangzhi  >cd code/ktsg_new/ktsg_new/trunk/config

   4.  跳转路径 省略 cd 命令.

        你可以直接按照 finder 里定位路径一下,一层一层输入路径名.就像这样:

➜  /Users/zhangzhi  >code/kt/kt_sgs/ktsg_portal/trunk/api/

直接回车 就可以进入 api 目录

         当然,你还可以使用上面 3 提到的首字母缩略写法:

➜  /Users/zhangzhi  >c/b/n

然后tab 去补全这个目录,就是下面的:

➜  /Users/zhangzhi  >code/blog/node_modules/

这个过程如果你的首字母存在多个候选目录的时候,可能需要你输入第二个,第三个字母来准确定位.


    5.  在你的当前所在目录 输入文件内名,可以直接跳转进入.  

    输入 ...  回车,直接在当前定位回退2层目录

➜  /Users  >cd zhangzhi/code/new_portal/app
➜  /Users/zhangzhi/code/new_portal/app git:(dev) ✗ >...
➜  /Users/zhangzhi/code  >

上面 shell 我首先进入  zhangzhi/code/new_portal/app  这个目录.

然后 输入 ...

回退2层目录 直接定位到了 /Users/zhangzhi/code 目录下


    6.  当前所在目录下 直接输入 d ,将会展示出你历史访问目录列表,并且左侧加了数字索引,

        如下

➜  /Users/zhangzhi/code  >d
0	~/code
1	~/code/new_portal/app
2	/Users

上面的 d 指令给我列出了 3个我的历史访问目录,前面分别加了索引序列 0,1,2

这时的目录索引在你的当前 shell 会话已经被固定.任何时候,在此 shell 会话内输入 1 ,你会看到下面的神奇效果:

➜  /Users/zhangzhi/code  >d
0	~/code
1	~/code/new_portal/app
2	/Users
➜  /Users/zhangzhi/code  >1
~/code/new_portal/app
➜  /Users/zhangzhi/code/new_portal/app git:(dev) ✗ >

当我直接在 zsh 中输入 1 ,回车后它可以准确帮我定位到 ~/code/new_portal/app 目录下,实在是方便体贴.


    7.通配符搜索功能.

        ls -l 

比如我想在我的项目中查找 *.md 等 markdown文件

➜  /Users/zhangzhi/code/new_portal git:(dev) ✗ >ls -l *.md
-rw-r--r--  1 zhangzhi  staff  2954  8 13 11:35 Readme.md

上面的通配符搜索  ls -l *.md

帮我搜索到了 new_portal 目录下有个  Readme.md 文件.

替换了你的使用的 find 和 locate 指令, locate 指令要优于 find,点击查看

更多的 zsh 强大快捷功能等待我们去发现,此博文也会在不断的更新补充.


出自:zsh 有哪些方便快捷的功能,提升shell输入体验 优点简介(不断补充)


回到顶部