转自:https://www.cnblogs.com/woshimrf/p/vim.html

这里记录一下,做笔记查阅。

使用vim编辑文件:

vim filename

进入之后的界面叫做命令模式界面。可以修改文件编辑的时候叫做插入模式

(插入模式)编辑模式

以下按键进入编辑插入模式

a      //在当前光标位置的右边添加文本
i       //在当前光标位置的左边添加文本
A     //在当前行的末尾位置添加文本
I      //在当前行的开始处添加文本(非空字符的行首)
O     //在当前行的上面新建一行
o     //在当前行的下面新建一行
R    //替换(覆盖)当前光标位置及后面的若干文本
J    //合并光标所在行及下一行为一行(依然在命令模式)

(命令模式)冒号+指令

在vim命令模式界面想要退出,需要输入冒号和指令

:wq   保存并退出
:q  维修改退出
:q! 强制退出并不保存

(命令模式)移动光标

在vim界面,命令模式下光标移动方法

1、使用上下左右方向键

2、命令模式下:
h   向左
j   向下 
k   向上
l  向右

空格键 向右
Backspace  向左
Enter  移动到下一行首
-  移动到上一行首。

:set  nu     //显示行号
:set nonu    //取消显示行号
n+        //向下跳n行
n-         //向上跳n行
nG        //跳到行号为n的行
G           //跳至文件的底部
g         //跳转到文件头部

(命令模式)删除和复制

在vim中, 除了在编辑模式下修改文件,命令模式的时候可以删除和复制

x         //删除当前字符
nx         //删除从光标开始的n个字符
dd       //删除当前行
ndd      //向下删除当前行在内的n行
u        //撤销上一步操作
U        //撤销对当前行的所有操作
yy       //将当前行复制到缓存区,也可以用 "ayy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
nyy      //将当前行向下n行复制到缓冲区,也可以用 "anyy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
yw       //复制从光标开始到词尾的字符。
nyw      //复制从光标开始的n个单词。
y^       //复制从光标到行首的内容。  VPS侦探
y$       //复制从光标到行尾的内容。
p        //粘贴剪切板里的内容在光标后,如果使用了前面的自定义缓冲区,建议使用"ap 进行粘贴。
P        //粘贴剪切板里的内容在光标前,如果使用了前面的自定义缓冲区,建议使用"aP 进行粘贴。

(命令模式)搜索和替换

命令模式下(esc退出插入模式)

/keyword     //向光标下搜索keyword字符串,keyword可以是正则表达式
?keyword     //向光标上搜索keyword字符串
n           //向下搜索前一个搜素动作
N         //向上搜索前一个搜索动作

*(#)      //当光标停留在某个单词上时, 输入这条命令表示查找与该单词匹配的下(上)一个单词. 同样, 再输入 n 查找下一个匹配处, 输入 N 反方向查找.

g*(g#)        //此命令与上条命令相似, 只不过它不完全匹配光标所在处的单词, 而是匹配包含该单词的所有字符串.

:s/old/new      //用new替换行中首次出现的old
:s/old/new/g         //用new替换行中所有的old
:n,m s/old/new/g     //用new替换从n到m行里所有的old
:%s/old/new/g      //用new替换当前文件里所有的old

附上原作者的公众号,吃水不忘挖井人。

vim 命令插入、删除、查询、替换操作。相关推荐

  1. 二叉搜索树-php实现 插入删除查找等操作

    二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值: 若它的 ...

  2. Vim命令之查找和替换

    查找和替换 /pattern  从光标开始处向文件尾进行搜索pattern,后按下n或者N n在同一个方向上重复上一次搜索命令 N在反方向重复上一次搜索命令 n或N来源于单词next 注意:在/pat ...

  3. 使用Vim 对文本多行指定列的字符删除,替换

    Vim支持列操作模式,可对多行制定列字符进行插入,删除,修改(替换). 1.选中需要操作的文本块 a.启动vim,按v, 进入Vim可视模式,命令行会有"可视块"的提醒. b.移动 ...

  4. linux db2删除表字段命令,DB2—alter追加/删除/重置column操作

    DB2-alter追加/删除/重置column操作 1.添加字段 alter table 表名称 add 字段名称 类型 Demo: 1 alter table table_name  add  co ...

  5. Linux Sed命令具体解释+怎样替换换行符quot;\nquot;(非常多面试问道)

    Sed Sed是一个强大的文本处理工具 能够採用正则匹配.对文本进行插入删除改动等操作 Sed处理的时候,一次处理一行,每一次把当前处理的存放在暂时缓冲区.处理完后输出缓冲区内容到屏幕,然后把下一行读 ...

  6. linux替换换行符 n r,Linux Sed命令详解+如何替换换行符\n(很多面试问道)

    Sed Sed是一个强大的文本处理工具 可以采用正则匹配,对文本进行插入删除修改等操作 Sed处理的时候,一次处理一行,每一次把当前处理的存放在临时缓冲区,处理完后输出缓冲区内容到屏幕,然后把下一行读 ...

  7. Android开发--初探SQLiteDataBase/数据库的创建,更新,插入,查询

    在应用程序的开发中,我们常常会用到数据库,由于手机的内存相对于电脑来说非常小,且存储容量有限,所以一般选用SQLiteDataBase来作为储存数据的数据库. 下面的例子实现的是数据库的创建,更新,插 ...

  8. linux中vim命令怎么查找替换,vim命令行快捷操作及查找替换

    一.Vim命令行模式常见快捷方式 1. 三种主要模式: ① 命令(Normal)模式: 默认模式,移动光标,剪切/粘贴文本 ② 插入(Insert)或编辑模式: 修改文本 ③ 扩展命令(extende ...

  9. 【C 语言】文件操作 ( 学生管理系统 | 插入数据 | 查询数据 | 删除数据 )

    文章目录 一.学生管理系统 1.插入数据 2.查询数据 3.删除数据 二.完整代码 一.学生管理系统 实现一个简易学生管理系统 , 验证文件操作 ; 1.插入数据 从命令行接收数据 , 放入结构体成员 ...

最新文章

  1. Spring5源码 - 01 BeanDefination源码分析
  2. (JavaWeb)Filter过滤器
  3. 如何看待第三代神经网络SNN?详解脉冲神经网络的架构原理、数据集和训练方法 原创
  4. Eclipse从SVN恢复本地误删除已删除的文件和代码
  5. Chrome 调试技巧
  6. 第八十六期:“程序员锁死服务器导致公司倒闭”案正式开庭审理
  7. 异构GoldenGate 12c 单向复制配置
  8. 算法——从旋转字符串到翻转单词
  9. 51单片机实现简单计算器
  10. linux 制作分区镜像img文件
  11. u盘和计算机捆绑,不要再使用乱七八糟的捆绑PE了——教你制作最纯净的PE系统维护U盘!...
  12. 基于ARM开发板的嵌入式项目设计(C完整代码)
  13. html中怎么去除多余的代码,去除HTML代码中所有标签的两种方法
  14. Unity 多点触控 禁用与启用
  15. 使用echarts扩展地图案例
  16. 使用Python将图片变成铅笔素描
  17. CS231n-课程总结
  18. 双语的c语言教程,C语言程序设计课程双语教学探索与实践
  19. Java第五课. 类对象
  20. 【python】imp让引用模块更加简单,import升级版

热门文章

  1. PIL gray img /灰度图 转OpenCV格式灰度图
  2. android 原生请求权限代码
  3. 如何将Asp.net 2.0网站部署到服务器
  4. 快捷下载中国原创音乐基地音乐(包括金豆和无法下载音乐)
  5. Auto Layout和UILabel
  6. mac 文件上传服务器
  7. VR眼镜全国产化电子元件推荐方案
  8. 3D游戏设计作业(三)
  9. Week8 作业 C - 班长竞选 SCC Kosaraju HDU - 3639
  10. 适合学生写的请假管理系统