Chinaunix首页 | 论坛 | 博客
  • 博客访问: 414186
  • 博文数量: 54
  • 博客积分: 2225
  • 博客等级: 大尉
  • 技术积分: 547
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-23 09:58
文章分类

全部博文(54)

文章存档

2014年(1)

2012年(1)

2011年(33)

2010年(6)

2009年(13)

分类: LINUX

2011-11-28 17:49:50

vi 删除操作大全

:%s/r//g                            删除DOS方式的回车^M 
:%s= *$==                       删除行尾空白 

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

:%s/^.{-}pdf/new.pdf/    只是删除第一个pdf 

:%s///            又是删除多行注释(咦?为什么要说「又」呢?) 

:g/s*^$/d                         删除所有空行 :这个好用有没有人用过还有其他的方法吗?
:g!/^dd/d                         删除不含字符串'dd'的行 
:v/^dd/d                           同上 (译释:v == g!,就是不匹配!) 

:g/str1/,/str2/d                 删除所有第一个含str1到第一个含str2之间的行 


:v/./.,/./-1join                压缩空行 
:g/^$/,/./-j                    压缩空行 

ndw 或 ndW         删除光标处开始及其后的 n-1 个字符。 
d0                                 删至行首。 
d$                                 删至行尾。 
ndd                               删除当前行及其后 n-1 行。 
x 或 X                   删除一个字符。 
Ctrl+u                           删除输入方式下所输入的文本。 
^R                                恢复u的操作 
J                                   把下一行合并到当前行尾 
V                                  选择一行 
^V                               按下^V后即可进行矩形的选择了 
aw                               选择单词 
iw                                内部单词(无空格) 
as                                选择句子 
is                                 选择句子(无空格) 
ap                               选择段落 
ip                                选择段落(无空格) 
D                                删除到行尾 
x,y                              删除与复制包含高亮区 

dl                            删除当前字符(与x命令功能相同) 
d0                           删除到某一行的开始位置 
d^                          删除到某一行的第一个字符位置(不包括空格或TAB字符) 
dw                          删除到某个单词的结尾位置 
d3w                        删除到第三个单词的结尾位置 
db                           删除到某个单词的开始位置 
dW                         删除到某个以空格作为分隔符的单词的结尾位置 
dB                          删除到某个以空格作为分隔符的单词的开始位置 
d7B                        删除到前面7个以空格作为分隔符的单词的开始位置 
d)                          删除到某个语句的结尾位置 
d4)                        删除到第四个语句的结尾位置 
d(                          删除到某个语句的开始位置 
d)                          删除到某个段落的结尾位置 
d{                         删除到某个段落的开始位置 
d7{                       删除到当前段落起始位置之前的第7个段落位置 
dd                         删除当前行 
d/text                    删除从文本中出现“text”中所指定字样的位置, 一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容 
dfc                         删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容 
dtc                         删除当前行直到下一个字符“c”所出现位置之间的内容 
D                           删除到某一行的结尾 
d$                         删除到某一行的结尾 
5dd                       删除从当前行所开始的5行内容 
dL                         删除直到屏幕上最后一行的内容 
dH                         删除直到屏幕上第一行的内容 
dG                         删除直到工作缓存区结尾的内容 
d1G                       删除直到工作缓存区开始的内容 

阅读(1847) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~