vim 10点技巧
2018-04-20 本文已影响87人
思考问题的熊
昨天看到一个同学操作linux系统,系统报错信息显示一个文件的第一千多行有问题。她的操作方式是把服务器里的这个文件拷到本地电脑上,然后在打开本地的编辑器,然后再取找那一行。
当时我的内心就有点崩溃,虽然vim在很多人眼里已经是老古董了,比不上那些高大上的IDE。但是会用一点vim真的是非常必要的。以下是我们日常处理脚本时可能会用到的一些小技巧,和大家分享。
首先vim包括normal和insert两种模式,在normal模式下,所有键盘上的按键都是功能键。在insert模式下可以正常的输入内容。如果目前还不知道如何进行normal和insert模式的切换,下文暂时就不需要看了,可能需要先补充一点点基础知识,比如如何顺利的进入vim,以及如何在不关闭终端的情况下顺利的退出vim(并保存)。
- 进入vim 后直接定位在某一行或者末尾
- vim + test.txt 直接进入文本末尾
- vim +5 test.txt 直接进入文本的第五行
- 显示和取消行号
- 显示行号 set nu
- 取消行号 set nonu
- 行内和行间瞬间移动(normal 模式)
- 行内
- 0 行头
- $ 行尾
- t. 到'.'符号前的第一个字符
- f1 到下一个'1'的位置
- w 到下一个单词开头
- e 到下一个单词结尾
- 行间
- :66 到第66行
- gg 到第一行
- G到最后一行
- 5G 到第5行
- 行内
- 屏幕瞬间移动
- 后滚一屏 ctrl+f
- 前滚半屏 ctrl+b
- 定位屏幕中间 zz
- zt 屏幕顶端
- zb 屏幕底部
- 插入删除
- 另外起新行编辑 o
- 删除字符 x(光标所在处)
- 6x 删除6个字符
- 删除所在行 dd
- 删除到行首 d^; 行尾 d$
- 复制与粘贴
- 复制所在行 yy
- 多行复制:
- 第一步:V
- 第二步: 移动光标自由选择
- 第三步:y 复制选择部分(d 为剪切)
- 粘贴:移动到想复制的位置,按 p 粘贴在光标后,P为光标前
- 注释与取消注释
- 注释
- 按 Ctrl+v 切换可视模式
- 移动光标选中注释行开头
- 按大写 I
- 输入 #
- 按 Esc
- 取消
- 按 Ctrl+v 切换可视模式
- 选择要删除的注释符
- 按 d 或 x 删除 #
- 注释
- 搜索
- /whatyouneed
- 按 n 切换到下一个
- 替换
- :s/a/b/g 替换当前行所有a 为 b
- :%s/a/b/ 替换每行第一个 a 为 b
- :%s/a/b/g 替换每行所有 a 为 b
- 反悔模式 :%s/a/b/gc vim匹配文字高亮并询问
- y 表示替换当前
- n 表示不替换当前
- a 表示全部替换
- q 表示退出不玩儿了
- l 表示把当前替换后就不玩儿了。
- 重复与撤销
- . 重复此前的操作
- u 撤销此前的操作
- 5u 撤销此前的5个操作
加入靠谱熊基地,和大家一起交流