原标题:Linux运维行走江湖必备之:vim命令常用参数

vim是Linux运维日常工作中最常用的命令之一,vim命令的参数有很多,我们选用一些常用的命令参数,足以对付日常的文本编辑工作,如果日后有需要使用其他命令,再来查询也不迟。

vim一般有3种编辑模式,分别是插入模式,正常模式(normal mode),末行模式。

以下主要是在正常模式下的操作,其他模式操作会注明相关模式

1.1 移动光标

h------>每次按下向左移动

j------>每次按下向下移动

k------>每次按下向上移动

l------>每次按下向右移动

1.2 VIM的进入和退出

按键,进入正常模式

然后输入以下的几种方式来退出

:q #不保存并退出vim

:q! #强制退出

:wq #保存文件并退出

:x #相当于:wq

1.3 文本编辑之删除

在正常模式(Normal mode)下,可以按下 x 键来删除光标所在位置的字符。

1.4 文本编辑之插入

在正常模式下进入插入模式,可以有以下几种方法:

可以按下 i 键,在光标处插入文本。

按下 a 键,在光标后面插入文本。

按下大写 A 键,在光标所在行的最后一个字符后插入文本。

1.5 文本编辑之添加

按 A 键,在光标所在的行的文本末尾添加

按 a 键,在光标所在位置后面添加

2.1 删除类命令

输入 dw 可以从光标处删除至一个单词的末尾。

2.2 关于命令和对象

许多改变文本的命令都由一个操作符和一个动作构成。

使用删除操作符 d 的删除命令的格式如下:

d motion

其中:

d - 删除操作符

motion - 操作符的操作对象(在下面列出)。

一个简短的动作列表:

w - 从当前光标位置到下一个单词起始处,不包括它的第一个字符。

e - 从当前光标位置直到单词末尾,包括最后一个字符。

$ - 从当前光标位置直到当前行末。

2.3 使用计数制定动作

在动作前输入数字 n ,会使它重复 n 次。

输入 2w 使光标向后移动2个单词。

输入 3e 使光标向后移动到第3个单词的末尾。

输入 0(数字零) 移动光标到行首。

2.4 使用计数以删除更多

使用操作符时输入数字 n ,可以使它重复 n 次。

比如: operation number(数字) motion

d2w 可以删除2个单词。

2.5 操作整行

输入 dd 可以删除一个当前行,并保存到寄存器,作用类似“剪切”操作,可以配合 p 操作使用。

2.6 撤消类命令

输入 u 来撤消最后执行的命令,输入 U 来撤消对整行的修改。

使用 Ctrl + r ,可以撤消一次之前的撤消命令。

3.1 置入类命令

输入 p 将最后一次“剪切”的内容置入光标之后。

3.2 替换类命令

移动光标到要修改的字符位置,输入 r 和一个字符替换光标所在位置的字符。

3.3 更改类命令(C命令,即 “CHANGE” 的意思)

要更改文本直到一个单词的末尾,请输入 ce 。

3.4 使用C更改更多

c [number] motion

动作参数motion也是一样的,可以是 w ,e ,$d。

4.1 定位及文件状态

输入 Ctrl + g ,显示当前编辑文件中当前光标所在行位置以及文件状态信息。

输入大写 G ,则直接跳到文件最后一行。

输入nG,可以跳到行号为n的那一行。

输入 gg,可以跳到文件的首行。

4.2 搜索类命令

输入 / 加上一个字符串,可以在当前文件中查找该字符串。要想查找下一该字符串,按 n 键,如要反向查找,输入大写 N。

如果想逆向搜索,输入 ? 代替 / 。

4.3 配对括号的查找

定位光标在要配对的一处括号处,输入 % 可以查找与之配对的另一处括号 ),],}。

4.4 替换命令

输入 :s/old/new ,可以替换一次该行 old处的字符串 为 new处的字符串。

输入 :s/old/new/g,可以替换该行所有 old处的字符串 为 new处的字符串。

输入 :#,#s/old/new/g ,其中#,# 代表的是替换操作的起始行和结束行的行号。

输入 :%s/old/new/g ,则是替换整个文件中的每个匹配串。

输入 :%s/old/new/gc ,会找到整个文件中的每个匹配字符串,并且对每个匹配字符串提示是否进行替换。

5.1 在 VIM 内执行外部命令的方法

输入 :! 然后紧接着输入一个外部命令可以执行该外部命令。

例如, :!ls + 回车,该命令就是列举处您当前目录的内容。

5.2 关于保存文件的更多信息

要将对文件的改动保存到文件中,请输入 :w 文件名。

5.3 一个具有选择性的保存命令

通过按下 v 键选择要保存文件的部分内容,然后输入 :w 文件名,即可将选择的内容保存到目标文件。

5.4 提取和合并文件

要向当前文件中插入另外的文件的内容,请输入 :r 文件名。

6.1 打开类命令

输入 o ,将在光标的下方打开新的一行并进入插入模式。

输入大写 O ,将在光标的上方打开新的一行,并进入插入模式。

6.2 另外一个置换类命令的版本

输入大写的 R ,可以连续替换多个字符。

6.3 复制粘贴文本

使用操作符 y 复制文本,使用 p 粘贴文本。

输入 yy ,将复制光标所在行。

可以配合动作参数motion使用:

输入 yw,复制一个单词。

运维派编辑整理,原文出处:http://www.cnblogs.com/novahere/p/7076602.html

责任编辑:

linux中vim内容定位,Linux运维行走江湖必备之:vim命令常用参数相关推荐

  1. 运维工程师必备150个命令(连载中...)

    150个 1.mkdir  make directory                          创建目录 例子:mkdir /data表示在根下创建data目录. 参数:-p 递归创建 2 ...

  2. 运维人员必备的Linux系统命令汇总

    运维人员必备的Linux系统命令汇总 线上查询及帮助命令 文件和目录操作 查看文件及内容处理 文件压缩及解压缩 信息显示 搜索文件 用户管理 基础网络操作 深入网络操作 有关磁盘与文件系统 系统权限及 ...

  3. mongodb配置文件启动linux,Linux运维知识之Mongodb启动方法:设定参数启动;从设置文件启动...

    本文主要向大家介绍了Linux运维知识之Mongodb启动方法:设定参数启动;从设置文件启动,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 接手的MongoDB只有一个日志文件 ...

  4. linux有数据恢复工具吗,Linux运维人员必备的数据恢复工具有哪些?

    今天小编要跟大家分享的文章是关于Linux运维人员必备的数据恢复工具有哪些?相信对于很多正在从事Linux运维工作,或者是其他Linux运维爱好者都需要重点.无论你使用的是台式电脑还是笔记本,需要关注 ...

  5. setfacl命令_一名合格的Linux运维人员应该掌握哪些命令?

    Linux基金会(LinuxFoundation)正式宣布已有22个新组织加入基金会,这意味着Linux的未来前景更加广阔,也将促使更多的人学习并加入Linux开发行列.在学习Linux的过程中,很多 ...

  6. Linux操作系统——Linux可视化管理-webmin 和 bt 运维工具

    文章目录 25 Linux 可视化管理-webmin 和 bt 运维工具 25.1 webmin 25.1.1 基本介绍 25.1.2 安装webmin&配置 25.1.3 简单使用演示 25 ...

  7. Linux 可视化管理-webmin 和 bt 运维工具

    Linux 可视化管理-webmin 和 bt 运维工具 webmin Webmin 是功能强大的基于 Web 的 Unix/linux 系统管理工具.管理员通过浏览器访问 Webmin 的各种管理功 ...

  8. linux中什么是文件,linux中什么是文件

    linux中什么是文件 1.Linux中所有内容都是以文件的形式保存和管理,即:一切皆文件. 普通文件是文件. 目录(在win下称为文件夹)是文件. 硬件设备(键盘.硬盘.打印机)是文件. 套接字(s ...

  9. linux中感叹号的作用,Linux - 感叹号

    在Linux命令行下令人惊叹的惊叹号(!) ! 符号在 Linux 中不但可以用作否定符号,还可以用来从历史命令记录中取出命令或不加修改的执行之前运行的命令.下面的所有命令都已经在 Bash Shel ...

最新文章

  1. GeoIP的使用 - PHP版
  2. 结构体序列为JSON
  3. maven错误The JAVA_HOME environment variable is not defined correctly
  4. Identity Server 4 原理和实战(完结)_建立Identity Server 4项目,Client Credentials 授权实例...
  5. PHP判断上传文件类型
  6. curl命令使用介绍
  7. ClassNotFoundException Com Sun Jersey Spi Container Servle
  8. 抖音发布2020数据报告:日均视频搜索量破4亿,70后最爱发表情包
  9. 面试—每日一题(5)
  10. Koa中使用art-template模板引擎,以及如何接受post请求等
  11. 使用CleanMyMac的空间透镜功快速决策清理垃圾
  12. 【读书笔记】李彦宏传-张丽,学霸李彦宏:北大信管+留学纽约州立大学+百度创始人
  13. 巴斯勒相机的相机控制类析构函数多次调用的问题
  14. 3.4 智能手表整体结构设计总结
  15. python降序排序_python中如何降序排列
  16. 关于使用U盘制作简单windows开机加密狗
  17. 文心一言——何妨吟啸且徐行
  18. 山东二本计算机排名大学最新,山东二本大学排名最新
  19. 各种电磁仿真软件优缺点
  20. 一种迪文屏软件在线升级方法

热门文章

  1. python 微信bot_我如何创建Python Bot自动登录到强制门户
  2. 我如何构建SiriWaveJS库:看一下数学和代码
  3. python爬取知乎live_Python爬虫从入门到放弃(十九)之 Scrapy爬取所有知乎用户信息(下)...
  4. pygame做的著名游戏_用Python和Pygame写游戏-从入门到放弃(1)
  5. 将Mongodb注册为Windows系统服务
  6. Git提交本地代码到GitHub
  7. textbox有个AutoCompleteType的属性
  8. LINQ to DataSet
  9. .NET下数据访问层+webform前台 技术大比拼
  10. 漫步数理统计二——集合论