您的位置:首页 > 运维架构 > Linux

Linux--vim入门常用命令

2010-12-10 14:28 363 查看
 

所有命令都是在正常模式下开始输入的。

 

退出vim:

:w #保存修改write

:wq #保存退出write+quit

:q! #强制不保存修改退出

:wq! #强制保存修改退出

:w filename #保存为filename文件

:num1,num2 w filename #将第num1行到第num2行到内容保存为filename文件

 

移动光标:

  k

h   l

  j

w #表示到单词尾,包含空格

e #表示到单词尾,不包含空格

0 #表示到行头

 

$ #表示到行尾

1G #表示到文件头,gg也表示到文件头

 

 

G #转到文件尾

G #转到第n行,注意输入行号时行号不显示

Enter #移动到下一行

Enter #向下移动n行

H/M/L #分别表示到当前屏幕的上/中/下

 

Ctrl+g #显示当前行号与进度等信息

 

 

插入:

i #进入插入模式

a #在当前光标处开始插入

A #从当前行尾开始插入

o #在当前光标的下面插入一行进入insert模式

O #在当前光标到上面插入一行进入insert模式

c [count] object 或者 [count] c object

cw #删除当前光标到单词结尾到内容后进入insert模式

ce #同cw

c$ #删除光标到行尾内容后进入insert模式

R #进入insert模式,新输入的内容替换原处的内容

:r filename #将filename的内容复制到当前光标处

 

选择:

v #字符选择

V #行选择

Ctrl+v #区块选择

选择完后可与下面的复制/删除/粘贴等联合使用了。

 

删除:

x #删除光标处到字符

d [count] object 或者是 [count] d object

dd #删除当前行

dw #删除当前单词,包含空格

de #删除当前单词,不包含空格

d0, d$, d1G, dG, dEnter, dnEnter可以参考移动光标的内容

d$ #删除当前光标到行尾到内容

ndd #删除从当前行开始的n行

注意:最后删除的内容在缓冲区中。

 

 

复制:

y0,y$,y1G,yG,yEnter,ynEnter等参考移动光标的内容

yy #复制当前行

nyy #复制下面的n行

 

粘贴:

p #在光标后/光标下一行粘贴缓冲区上的内容

P #在光标前/光标上一行粘贴缓冲区上的内容

 

 

撤销命令:

u #撤销命令

U #撤销当前行上的命令

Ctrl+r #重复执行上次命令,.也有相同功能

Ctrl+R #撤销撤销的命令

 

 

搜索:

/word #正向开始搜索word

?word #逆向开始搜索word

n #下一个匹配

Shift+n #上一个匹配

:set ic #不区分大小写 ignore case

 

 

替换:

r[新内容] #将光标处的内容用[新内容]替换

:s/old/new #将查找到的第一个old替换为new

:s/old/new/g #将当前行中到old全部替换为new

:num1,num2s/old/new/g #将第num1行到第num2行之间到old替换为new

:%s/old/new/g #将整个文档的old替换为new

 

 

括号配对:

% #移动光标到([{等的配对括号处

 

 

在vim中执行外部命令:

:!command #相当于在终端输入command,再按Enter返回vim

 

分割窗口:

:sp file #与file档案分割窗口,同时显示

:sp #本档案在两个窗口显示

Ctrl + w + 上下键在不同窗口间切换

 

多档案操作:可以在多个档案间相互操作,既简便,又能保留格式。

:files #显示在同一个窗口操作的多个档案名

:n #到下一个档案

:N #到上一个档案

注意:切换档案时修改的要保存下。

 

:help #查看vim到帮助文档

:sy on #语法加亮 打开

:sy clear #取消语法加亮

:set go= #go=gui option, 图形菜单为空,即取消图形菜单

:set mouse=a  #可以配合鼠标使用

:colo evening  #修改背景颜色,tab键可以看到不同的颜色

 

 

 

参考:vimtutor,《鸟哥的Linux私房菜基础篇》

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息