vi-vim (九):删除、撤销、恢复删除、复制删除

删除

1 删除命令

vi命令

操作键

x

 删除当前光标处的字符

X

 删除光标左边的字符

D

 删除从当前光标到本行末尾的字符

J

 删除两行之间的换行符 (亦可用于合并两行)

dmove

 删除从当前光标到move所给位置的字符

dd

 删除当前行

ex命令

 

:lined

 删除指定行

:line,lined

 删除指定范围内的行

 

2 常用的删除组合命令

说明:操作符命令+位移命令

1      nx                          删除多个字符(n为删除的字符个数)       

2      dw                           删除1个单词

3      d10w                       删除10个单词

4      d10W                      删除10个单词,忽略标点符号。

5      db                           向后删除一个单词

6      d2)                        删除两个句子

7      d5}                           删除5个段落

8      dG 或 :.,$d                删除当前行到编辑缓冲区末尾的所有行

9      dgg 或 d1G 或:1,.d           删除当前行到编辑缓冲区开头的所有行

10    :1,$d 或 :%f                     删除整个编辑缓冲区

11    d/word                             删除从光标所在位置到单词word的所有文本  

12    .,/word/d                   删除从光标所在位置到单词word的所有文本

13    df x                          删除至当前行中x所在的位置

14    d^                            删除至该行的开始处

15  :g/^$/d                删除文件中所有空行

3插入模式中删除操作

^U                         删除当前行

^H                         删除前一个字符

^W                        删除前一个词

4 撤销或重复改变

vi命令:

1      u                        撤销上一命令对编辑缓冲区的修改

2      U                        恢复当前行(即一次撤销对当前行的全部操作)

3      .点号                    重复上一命令对编辑缓冲区的修改

5 恢复删除

语法:"1p(P) 

说明:

1      1为缓冲区的编号。

2      p在当前行的下面插入,P在当前行的上面插入。

6 复制上一次删除

命令

说明

p

 复制上一次删除的内容,插入到光标的后面/下面

P

 复制上一次删除的内容,插入到光标的前面/上面

7其它有用的一些删除

删除行尾多个空格 :   :%s/\s\+$//g

删除行首多个空格 :   :%s/^\s*//g

删除重复行:           :%s/^(.*)n1/1$/

删除所有中文:    :%s/\v[^\x00-\xff]+//g

删除所有数字:    :%s/\d//g

posted @ 2013-05-18 12:58  smstars_test  阅读(18381)  评论(0编辑  收藏  举报