Linux--常用VI/VIM命令

  VI编辑器是Unix和Linux系统下标准的编辑器,VIM就是VI的升级版,多了高亮,等特性。VI和VIM是比较常用的文本编辑工具,是必须要使用的,需要记住常用的命令。下面内容主要使用VIM来表示:

三种模式

三种模式: 1,命令模式 2,输入模式 3,末行模式

  • 命令模式 :就是使用”vim打开文本”后进入的模式。该模式下不可直接输入,可以进行光标移动删除等操作。
  • 输入模式 :就是在命令模式通过”Insert”进入的模式。该模式下可进行键盘输入等操作。
  • 末行模式 :在底端进行命令输入的模式,该模式下可进行文件保存,退出,查找,替换等操作。

光标的移动

  • 屏幕移动:
1
2
3
4
[ctrl]+f:(向下PgDn)、[ctrl]+b:(向上PgUp)
H: #移动到当前屏幕第一个字符
M: #移动到当前屏幕中间第一个字符
L: #移动到当前屏幕最后一个字符
  • 行的移动:
1
2
[n]G: #移动到第n行,不写n移动到最后一行。 eg:移动到第一行,相当于1G。
n[Enter]:#光标向下移动多少行。
  • 字符移动:
1
2
3
↑上、↓下、左←、右→:#(前面加数字n,表示移动多少字符,例如:20→向右移动20个字符=n<apace>)。
0或^或功能键[Home]:#当前行开始字符。
$或功能键[End]:#当前行结尾字符。

查找和替换

  • 查找:
1
2
/:  #(向下查找)
?: #(向上查找)。==>(n继续向下,N继续向上)
  • 替换:
1
2
3
r:  #替换单个字符,[exit]推出。
R: #连续替换单个字符。
:n1,n2s/word1/word2/g[c]:#在第n1行和n2(n2->$可以用来表示最后一行)行之间查找word1并替换为word2。 (c,提示用户确认confirm)。

删除

1
2
删除字符:[n]x,  #表示向后删除n个字符(用X向前删除)。(x=[Del],X=[Backspace])
删除某行:[n]dd, #删除光标所在行的n行。(例如,dd删除当前行)

复制/粘贴

复制

1
2
3
4
5
复制字符:
y0: #复制光标所在字符到行首所有数据。
y$: #复制光标所在字符到行末所有数据。
复制某行:
[n]yy: #向下复制n行,(yy复制当前行)。

粘贴

1
2
p:   #粘贴数据到下一行。
P: #粘贴数据到上一行。

撤销/重复

1
2
3
撤销:u:   #撤销前一个操作。[n]u撤销最近几次。
重做:[Ctrl]+r: #撤销最后一次撤销操作。(常和u组合使用)
重复:. #:重复前一个操作。

选择(可视化模式)

1
2
3
字符选择:v   
行选择 : V
块选择 :[Ctrl]+v #(长方形方式)

命令模式,扩展几个命令

1
2
3
ZZ:   #文件已改动保存后离开,未改动不保存离开。
:w [fileName]: #将编辑的文件另存为。(:n1 n2 w [fileName],n1到n2行的数据另存为新文件)。
:set nu: #设置行号(:set nonu取消设置)。

例子:选某字符后删除/复制 :v d/y

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器