vim编辑器常用技巧

(一).写作缘由:

在使用linux的过程中,无论是运维管理还是普通用户都难免对操作文件,拥有一款得心应手的编辑器是必不可少的。可以说绝大部分使用者都是使用的vi/vim编辑器,不仅仅是因为它是linux系统默认安装了的软件,还因为它体积很小,功能强大。

vim(VI iMproved)编辑器可以说是vi(visual interface)的扩展版,vim支持语法高亮等特性,以及各种高效率的操作。使得编辑文件的效率得到提高,当然这需要使用者对其相对较熟悉。

(二).vim的常见模式:

(1).vim的模式非常多,这里只介绍一部分模式,包括编辑模式,插入模式,末行模式,本文也包含替换模式和可视化模式的内容。

a.编辑模式:就是使用vim打开文件或者直接输入vim之后的模式,左下角没什么特殊的提示,如下两图:

b.插入模式:一般按i,a,s,o或其大写等能进入插入模式,在这个模式下输入的内容会写到文件。如下图,在左下角会提示编辑器此时正处于该状态:

c.末行模式:此模式是在编辑模式下输入':'后进入的模式,该模式下的功能很多包括执行一些其他shell命令等,如下图所示:

d.替换模式:该模式是在编辑模式下按R键进入,在该模式下对文本的操作是替换操作,和覆盖差不多,如下图:

e.可视化模式:这种模式和windows里面的多选差不多,在编辑模式下按v或者V键能进入该模式,可以对选中的内容进行操作,如下图:

(2).这些模式之间是可以相互转换的,下图描述了上面几种模式的相互转换:

(三).vim的常用技巧:

(1).打开文件:

vim  filename: 打开名为filename的文件,光标处于文件的开始位置。

vim +n filename: 打开文件后,直接让光标处于第n行的行首。

vim + filename: 打开文件后直接处于最后一行行首(注意加号两边是空格)。

vim /pattern filename:   打开文件后使光标定位到第一次被pattern匹配到的模式位置(pattern是匹配模式,之后要确定一下,如下图:)

(2).关闭文件:一般在末行模式或者编辑模式下关闭文件

末行模式下:

q:    退出(不会保存内容,若此时编辑了内容,是不能退的,会让你确认是否保存)

wq:   保存并退出

q!:   不保存并退出

w:    保存

w!:   强制保存(需要特定权限)

x:    与wq一样

编辑模式下:

zz:   保存退出

(3).编辑器的一些常见设置:可以更改/etc/vimrc文件或者~/.vimrc,在末行模式下添加如下内容,也可以在末行模式下执行如下内容:

:set nu            让编辑器行号(nu为number)

:syntax on         开启语法高亮

:set ts=4          设置tab长度为4

:set autoindent    设置自动对齐

:set cindent       C语言编码时,内嵌代码自动缩进

这个设置完全可以按自己的喜好设置,网上很多,这里就不一一例举了。

(4).光标移动:

a.逐个字符移动

h: 左移光标

l: 上移光标

j: 下移光标

k: 右移光标

数字n与以上几个键组合: 可一次移动n个字符(例如3j: 光标从当前位置开始下移三个位置)

b.逐个单词移动

w: 移到下个单词词首

e: 移到当前或下一个单词的词尾

b: 跳到当前或上一个单词的词首

数字键n与上面的键组合: 可一次移动n个单词位置(例如5w: 向后移动五个单词的位置,且到单词首字母位置)

(5).行内跳转:

0: 跳到行首(绝对行首)

^: 跳到行首(相对行首)

$: 跳到行尾

(6).行间跳转:

G:     跳到最后行

gg:    跳到第一行

n + G: 跳转到第n行

在末行模式下跳转只需输入行号即可跳转,如下图:

(7).翻屏操作:

Ctrl + f: 向下翻一屏

Ctrl + b: 向上翻一屏

Ctrl + d: 向下翻半屏

Ctrl + u: 向上翻半屏

(8).删除单个字符:

x:  删除光标所在处的单个字符

nx: 删除光标所在处及向后的共n个字符

(9).删除命令d:

a.编辑模式下,与跳转命令组合使用可以删除多少内容:

dw:  删除一个单词

dd:  删除当前光标所在行

ndd: 删除包括当前光标所在行内的n行

b.末行模式下

m, nd:删除m到n行

., +5d:删除当前行到当前行之后的5行(共5行)

., 100d:删除当前航到100行

., $-9d:删除当前行到倒数第10行

c.说明: 删除的内容并没有被立即清空,而是在内存中,最后一次删除的内容可用于粘贴

(10).粘贴命令:

p: 如果删除或复制为整行内容,则粘贴到光标所在行的下方,如果复制或者删除的内容不是整行,则粘贴到光标所在字符的后面

P: 如果删除或复制为整行内容,则粘贴到光标所在行的上方,如果复制或者删除的内容不是整行,则粘贴到光标所在字符的前面

(11).复制命令y:

用法与d命令一样,将d换成y即可,也可在变模式和末行模式下进行,使用方法完全一样。

(12).修改命令c: 先删除内容,再转换为插入模式。

用法与d命令一样,将d换成c即可,也可在变换,如: c$: 先删除当前光标所在位置到末行的内容,然后进入插入模式。

(13).替换命令r:

按了r之后,输入要替换成的字符

也可与n组合,达到同时替换多个字符(一般不会那么干,很少有意义)

R:直接进入替换模式,输入的内容将覆盖原有的内容

(14).撤销编辑:

u:  撤销前一次编辑操做

nu:撤销前n次操作(一般只保留50次修改操作)

撤销刚刚撤销的操作:Ctrl + r

(15).重复前一次编辑操作

.: 按'.'即可重复上一次操作,例如:dd会后,再按'.',则会继续执行dd命令

(16).可视化模式(如下图):

v: 按字符选取

V: 按矩形选取

(17).查找替换:

/pattern:从文件首向尾部查找

?pattern:从当前光标位置向文件首部查找

n:跳到下一个匹配到的对象

N:跳到上一个匹配到的对象

(18).查找并替换(在末行模式下):

m, ns/pattern/string/g(全局替换)i(忽略大小写)

m, [email protected]@[email protected](与上面效果完全一样)

在第m行到n行搜索partern(可以正则),替换成string,即使一行有多个全部替换,忽略大小写

例如:

s/pattern/string/:      替换当前行匹配到的pattern的第一个对象为string

s/pattern/string/g:     替换当前行匹配到的pattern的所有对象为string

m, $s/pattern/string/:  替换从m行到最后一行匹配到的pattern的第一个对象为string

m, $s/pattern/string/g: 替换从m行到最后一行匹配到的pattern的所有对象为string

., $s/pattern/string/g: 替换从当前行到最后一行匹配到的pattern的所有对象为string

1, $s/pattern/string/g: 替换文本中所有的匹配到的pattern为string

%s/pattern/string/:     替换每一行匹配到的pattern的第一个对象为string

%s/pattern/string/g:    替换每一行匹配到的pattern的所有对象为string

说明: '/'与'@'效果在这里是一样的。

(四).如有不足之处,还请斧正:

这里只是写了vim的一少部分常用的功能,若你所找的答案不在其中,还请使用man帮助或者其他相关资料进行查阅。

原文地址:http://blog.51cto.com/daye8ku/2058816

时间: 2024-11-16 05:43:38

vim编辑器常用技巧的相关文章

【开发工具】vim编辑器实用技巧总结

总结一些我们在平时使用vim编辑器的一些实用功能,后续会一直更新. 1.  visual插件 visual插件其实相当于一个书签作用,比如我们在一篇很长的源代码文件中,我们可以标记一行,然后后来我们再想回到这一行时,只需要一个快捷键就能迅速定位到这一行,非常方便,不用不停地往上或往下翻. 1.1  常用命令 1.  mm标记一个标签: 2.  F2回到被标记的那一行: 3.  连续按两次mm就可以取消标签: 4.  shift+F2可以在几个标签来回切换: 2.  emmet.vim插件 emm

vim 编辑器使用技巧

看着李立鹏熟练的使用vim,哥心里痒痒的,也来试试! vim pkf.txt i 插入编辑 esc -> :x //退出保存 f8 ->//进入多窗口模式 以下是其他命令: 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并创建名为filename的文件 文件命令 打开单个文件 vim file 同时打开多个文件 vim file1 file2

vim编辑器使用技巧总结

vim编辑器使用技巧和总结 俗话说的好,磨刀不误砍柴功.操作系统常见的编辑器有很多,但是要想玩会linux就必须先学会vim编辑器,其使用方法总结如下: 1.打开文件 1).直接打开例如 vim yum.conf 2).启动后直接跳到行尾例如 vim + yum.conf 3).启动后跳到指定行(打开文件后直接转至第3行) vim +3 yum.conf 4).启动时按照模式匹配(/pattern) 跳到包含关键字的行 vim +/redhat  /etc/passwd   跳到含有redhat

vim编辑器常用命令的总结

vim编辑器常用命令的总结 0 摘要 总结一些vim增删改查命令,工作上一直要用vim编辑器修改配置文件,慢慢的爱上这款编辑器. 1 命令说明 如何快速的移动屏幕的行首和行尾(大写):H,L 翻页向前ctrl+f,翻页向后ctrl+b 插入 i正规的插入,a光标位置插入 显示行号 set nu(set number) 跳到某一行 :+行号 跳到文件结尾 G 跳到文件头部 gg 粘贴 yy复制一行 3yy复制3行(同理) 复制 p粘贴,P光标前粘贴 删除 删错了恢复,u dd删除一整行 3dd删除

vim编辑器常用操作

vim文件编辑器常用操作总结: 复制 yy 复制一行 10yy 复制从当前光标所在行到下面的10行 y1G 复制光标所在行至第一行的所有数据 yG  复制光标所在行至最后一行的所有数据 粘贴 p(小写) 粘贴到光标所在行的下一行 P(大写)粘贴到光标所在行的上一行 删除行 dd 删除光标所在的行 10dd 删除光标所在的行到下面10行 删除字符 x(小写) 删除光标所在位置后面的一个字符 x(大写) 删除光标所在位置前面的一个字符 合并行 J(大写) 将当前光标所在行合并到下一行 光标跳转 gg

vim编辑器----常用命令

vim编辑器 前沿:vim是一款非常好用的文档编辑以及编程的好工具,我们来详细看看 打开文件:# vim [options] [file ..] +#:打开文件后,直接让光标处于第#行的行首: +/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首: 模式转换: 输入模式 --> 编辑模式   按ESC键 编辑模式 --> 末行模式   按着shit+: 末行模式 --> 编辑模式    按ESC键 编辑模式:默认模式  可以输入的命令 i:insert,

VIM编辑器常用功能整理笔记

vim编辑器 vi : visual Inertface 可视化接口 vim : vi improved 扩展版 语法着色 模式化编辑器: 编辑模式(命令模式): 默认模式 输入模式: 末行模式: 等待输入命令 10d 删除第十行 10,20d set nu 显示行号 ! ls /etc 不用退出文件输入 系统shell命令 模式转换 编辑--> 输入 小写 i:在当前光标位置前面输入 a:在当前光标位置后面输入 o:在当前光标下一行新建一行 输入内容 大写 I 行首 A 行尾 O 上一行新建一

Vim 编辑器常用命令

Vim编辑器 命令 说明 i 在光标前插入 I 在行首插入 a 在光标后插入 A 在行末插入 o 在下一行插入 O 在上一行插入 yy 复制光标所在的这一行 nyy 复制光标所在行开始向下的n行 D 从当前光标开始剪切,一直到行末 do 从当前光标开始剪切一直到行首 dd 剪切光标这一行 ndd 剪切光标所在行向下n行 p 粘贴 u 撤销刚刚进行的操作 Ctrl+r 反撤销 dw 删除一个单词 x 删除当前的光标,每次删除一个 X 删除当前的光标前面,每次删除一个 v 选中一片代码(光标) V

Linux vi/vim编辑器常用命令与用法总结

(一)vi/vim是什么?Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便.vi就是一种功能强大的文本编辑器,而vim则是高级版的vi,不但可以用不同颜色显示文字内容,还能进行诸如shell脚本.C语言程序编辑等功能,可以作为程序编辑器. (二)为什么要学习vi/vim?首先所有的Linux发行版系统上都会默认内置vi编辑器,而不一定带有其他文本编辑器,非常通用:其次,很多