Windows 10命令行中能否使用类Vim命令?
在命令行里用上Vim式编辑,爽到飞起!
我太懂这种“敲到一半才反应过来不在Vim里”的抓狂感了!作为一个Vim深度用户,我无数次在终端里下意识敲w想跳单词,结果打出个字母w在命令里;或者想删错字时敲x,结果又多打了个x😂 不过好在几乎所有主流shell都支持启用Vim模式,完美解决这个问题,还能大幅提升命令行的编辑效率!
第一步:开启shell的Vim编辑模式
根据你用的shell,配置方法略有不同:
- Bash:打开你的
~/.bashrc文件,添加一行:
然后执行set -o visource ~/.bashrc让配置生效。 - Zsh:打开
~/.zshrc,添加:
同样执行bindkey -vsource ~/.zshrc生效。
核心操作:模式切换
- 默认是插入模式,和你平时敲命令完全一样,该怎么输就怎么输。
- 按
Esc键切换到普通模式,这时候就能用Vim的那套快捷键操作了;想回到插入模式,敲i(光标前插入)、a(光标后插入)、o(新开一行插入)都可以,和Vim完全一致。
最实用的Vim式命令行操作
这些操作能帮你快速修正长命令,再也不用狂按方向键:
- 光标移动:
h/l:左/右移动光标(比方向键顺手多了,不用挪手)w:跳到下一个单词的开头,b:回到上一个单词的开头0:跳到命令行的最开头,$:跳到命令行的最末尾f{字符}:直接跳到当前行里下一个指定字符的位置,比如敲f/就能瞬间跳到路径里的斜杠处,修正路径超高效
- 快速编辑:
x:删除光标所在的字符,改单个错字直接敲x就行,不用退格键r{字符}:直接替换光标所在的字符,比如把cd /hom改成cd /home,光标移到m上,敲re就搞定,不用进入插入模式dw:删除当前光标所在的单词,dd:删除整行命令u:撤销上一步操作,Ctrl+r:重做撤销的操作
- 历史命令搜索:
在普通模式下敲/,然后输入你想找的命令关键词,按回车就能搜索历史命令,n跳到下一个匹配项,N跳到上一个,比默认的Ctrl+R更直观!
用习惯之后,你会发现修改长命令、调整参数位置这些操作快了不止一倍,完全就是把Vim的高效带到了命令行里!
内容的提问来源于stack exchange,提问作者The Pompitous of Love
相关产品推荐
相关产品推荐

