首页 > 代码库 > linux基础篇-15,linux强大的文本编辑器vim命令详解

linux基础篇-15,linux强大的文本编辑器vim命令详解

################################################

vim模式

编辑模式

输入模式

末行模式


################################################


vim

一,打开文件

vim +#:打开文件,并定位于第#行

vim +:定位最后一行

vim +/pattern:定位第一次匹配到行的行首


################################################


模式转换

编辑>输入

   i:当前光标字符的前面,转换为输入模式

   a:当前光标字符的后面,转换为输入模式 

   o:当前光标所在位置的下方,新建一行,转换为输入模式


   I:光标行首

   A:光标行尾

   O:光标行上方,新建一行


输入>编辑

ESC


编辑>末行模式


末行>编辑

ESC 


################################################


二,关闭文件


末行模式

:q 退出

:q!不保存强制退出

:wq保存并退出 等同:x

:w保存

:w!强制保存


编辑模式关闭文件

ZZ


三,移动光标


1,逐个字符移动

逐行移动移动

h

l

j

k

#h #j #l #k


2,以单个单词移动

w:下一个单词的词首

e:跳至当前或下个单词的词尾

b:当前词的前一个单词的词首


#w #e #b


3,行内跳转

0 绝对行首

^ 行首第一个非空字符

$ 绝对行尾


4,行间跳转

#G:#行

G 最后一行

末行模式直接给行号即可


四,翻屏

ctrl+f:下一篇

ctrl+b:上一篇


ctrl+d:下半篇

ctrl+u:上半篇


五,删除单个字符

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

#x:删除光标后#个字符


六,删除命令 d

#dw #de #db

dd:删除当前光标所在行

#dd:删除当前光标所在内的#行

末行模式

startadd,endadd 1,10d

    .:代表当前行

    $:最后一行

    +$:向下的#行


七,粘贴命令 p

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


P:如果删错复制为整行内容,则粘贴至光标所在行的下方,如果复制或删除内容为非整行,则粘贴至光标所在字符的前面


八,复制命令 y

   用法通d命令


九,修改:先删除内容,再转换为输入模式

 c:用法通d


十,替换 

   r:替换单个字符

   R:替换模式


十一,撤销编辑操作

u:撤销前一次编辑操作

#u: 最多撤销最近50次操作

  撤销撤销的操作 ctrl+r


十二,重复前一次编辑的操作

.


十三,可视化模式

v:按字符选取

V:按矩形选取


十四:查找

/pattern

?pattern

   n

   N


十五,查找并替换

再末行模式下使用a命令

addr1,addr2spattern@string@qi

$

%:表示全文


十六,使用vim编辑多个文件

vim file1 files2 file3

:next  切换下一个

:prev  切换下一个

:last  切换最后一个

:first 切换第一个

:qa 全部退出


第十七,分屏显示一个问题

ctrl+w s

ctrl+w v

窗口间切换光标

ctrl+w arrow

:qa 全部退出


第十八,分窗口显示多个文件

vim -o:水平分割

vim -O:垂直分割


第十九,将当前文件中的内容另存为另一个文件

:addr1,addr2w /path/to/somewhere


第二十,将另一个文件中的内容填充在当前文件中

:r /path/to/somefile


第二十一,跟shell交互

:! command


第二十二,高级话题


1,显示或取消行号

:set nu

:set nonu


2,显示忽略大小写

:set ic

: set noic


3,设定自动缩进

:set ai 

: set noai


4,查找到的文本高亮显示或取消

:set hlsearch

: set nohlsearch


5,语法高亮

:syntax on: 

: syntax off


二十三,配置文件

[root@Jameszhan ~]# vim /etc/vimrc

[root@Jameszhan ~]# ~/.vimrc


第二十四,vim学习手册

[root@Jameszhan ~]# vimtutor


本文出自 “James zhan Linux高级运维” 博客,请务必保留此出处http://jameszhan.blog.51cto.com/10980469/1875925

linux基础篇-15,linux强大的文本编辑器vim命令详解