209153C5 A960 46BF 8D21 53E139EF9F2A - vim编辑器技巧指令_大全

vim编辑器技巧指令_大全

前言:vim就是文本编辑器,Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体。1999 年Emacs被选为Linuxworld文本编辑分类的优胜者,Vim屈居第二。但在2000年2月Vim赢得了Slashdot Beanie的最佳开放源代码文本编辑器大奖,又将Emacs推至二线, 总的来看, Vim和Emacs同样都是非常优秀的文本编辑器。

a)vi编辑器 (visual Interface简称) Linux常用,输出,删除,查找,替换,块操作,定制

b) vim编辑器 (vi IMproved简写)是vi增强版本,在vi上增加了很多功能,如代码的关键字高亮等。vim兼容所有的vi指令

为什么要学vim编辑器呢?

  • unix内置了vi文本编辑器,方便就不用说了
  • 支持代码以及颜色高亮,辨别语法的正确性
  • 多软件中自动调用vi
  • 等等
常用的小写小例子:
  • 配置hosts vim /etc/hosts
  • 配置alias永久别名 vim ~/.bashrc (Ubuntu)
  • 配置alias永久别名 vim ~/.bash_profile (Mac OS)
  • 配置alias永久别名 vim .zshrc (zsh)
  • 查看任何文本文件,如查看公钥 vim ~/.ssh/id_rsa.pub
  • 等等

如何使用?(以下是vi为例,用vim也一样的)

直接vi filename, 如果说main.c 不存在在,下面会出现 [New File] 直接:q 是不保存的

1) 用打开main.cc文件

[cc lang=”php”]
vi main.c
[/cc]

2) 查看当前的文本文件(在ssh登录服务器使用)

[cc lang=”php”]
ll
[/cc]

  • vi 的三种模式:
    • 命令模式:可移动光标,修改,删除,复制,搜索
    • 插入模式:a i o
    • 扩展模式,由 : 进入 退出,保存,查找 替换
  • 高效移动光标:
    • 左右上下: hjkl 或者 方向键
    • w 跳到下个字符
    • b 跳到上个字符
    • ( 跳到上个句子
    • 跳到下个句子
    • 跳到下个段落
    • 跳到上个段落
  • 命令模式下 复制, 删除, 修改:
    cc : 修改一行,也就是开启Insert模式
    cl : 修改一个字符
    cw : 修改一个词 ,注意:也就是从光标开始向后开始修改dd : 删除一行 D:也可以
    dl : 删除一个字符, 光标后
    dw : 删除一个词 光标后

    yy : 复制一行
    yl : 复制一个字符 ,光标后
    yw : 复制一个词 ,光标后开始复制一个词

  • 撤销操作
    • u 撤销最近一次修改 undo
    • ctrl+r 取消最后一次撤销 redo
    • U 撤销所有的修改
  • 查找操作:
    • /searchText 由光标向后搜索 (进入命令模式 : )
    • ?searchText 由光标向前搜索
    • n 由光标向下一步搜索
    • N 由光标向前搜索
  • 粘贴操作:
    • p 粘贴 复制或者修改过或删除的内容(即使删除 系统认识下次会用到 也复制上饿了)
    • p 粘贴在行上方,
    • P(大写) 粘贴在行下方
  • 范围操作
    • dto 删除从光标到字符o的所有字符
    • ro 将光标下的字符替换成o (修改字符方式可以这种比cl快)
    • dw 删除由光标开始后的一个词
    • 6dd 删除6行文字
    • 6yy 复制6行文字
    • 6x 删除6个字符
    • R 替换
  • 保存 退出 强制退出
    • :wq 保存并退出
    • :w! 强制保存
    • :q! 强制退出
    • :w 保存
    • :q 退出
    • :wq! 强制保存并退出
  • 快速文件内定位
    • G 跳到文件最后一行
    • 6G 跳到文件的第6行
    • ctrl+d 滑动到文件的下半屏
    • CTRL+u 滑动到文件的上半屏
  • 快速屏幕内定位
    • H 跳到本屏幕的第一行
    • M 跳到本屏幕中间一行
    • L 跳到本屏幕最后一行
    • z+Enter 让当前一行成为屏幕的第一行
    • z- 让当前一行成为屏幕的最后一行
  • 查找并批量替换(支持正则表达式)
    • set 来查找
    • 默认当前行查找
    • :s/a/b 就是把字符a替换成字符b(仅替第一个)
    • :s/a/b/g 把当前光标下一行中的a全都替换成b
    • :1,20s/a/b/g 在1-20行中的a全都替换成b
    • :1,¥s/a/b/g 在整个文件中的a全都替换成b
  • 读取和保存
    • :r filePath 把filePath路径下文本粘贴在光标后
    • :1,20 w fileName.txt 在1-20行文本内容写到fileName.txt(出现在你当前命令的路径下)
    • :1,$ w fileName.txt 在整个文本内容写到fileName.txt(出现在你当前命令的路径下)
    • :1,20 w>> fileName.txt 在1-20行文本内容继续粘贴到fileName.txt(出现在你当前命令的路径下)
  • 设置
    • :set 设置常用的配置选项
    • :set all 显示所有的配置选项
    • :set number 设置显示行号
  • 恢复文件
    • vi在编辑某一个文件时,会生成一个临时文件,这个文件以 . 开头并以 .swp结尾。正常退出该文件自动删除,如果意外退出例如忽然断电,该文件不会删除,我们在下次编辑时可以选择一下命令处理:
    • O 只读打开,不改变文件内容
    • E 继续编辑文件,不恢复.swp文件保存的内容
    • R 将恢复上次编辑以后未保存文件内容
    • Q 退出vi
      * D 删除.swp文件
    • 或者使用vi -r 文件名来恢复未保存的内容

    总结: 对于敲代码的码农朋友们,了解vim编辑器是钢需,为了加强和方便vim的使用,特整理了此文章,和大家一起学习。如发现有bug请联系本站修改,谢谢~

在 “vim编辑器技巧指令_大全” 上有4个观点

发表回复

电子邮件地址不会被公开。 必填项已用*标注