Chinaunix首页 | 论坛 | 博客
  • 博客访问: 321704
  • 博文数量: 65
  • 博客积分: 1770
  • 博客等级: 上尉
  • 技术积分: 1125
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-13 14:31
文章分类

全部博文(65)

文章存档

2016年(1)

2014年(2)

2013年(5)

2012年(18)

2011年(39)

分类: LINUX

2011-08-06 21:02:46

1. 统计某个词出现次数
    :%s/word//gn 替换命令,n表示只统计不替换
2. 筛选文件A里某些符合条件的行,写入到文件B中
    1) 文件A中
        :redir > ./B.txt
        :silent g/条件/
        :redir end
        缺点:会将行号一并写入文件b中,文件开头会空两行
    2) 文件A中
        :let @a=""
        :g/条件/y A
        :new B.txt
        定位到B.txt, 退到一般模式下,按
        "ap
        参考地址:
            
3. 顺序递增某个数字
    Fun(1) = 0,
    Fun(2) = 1,
    ....
    顺序递增30行.
    输入第一行后,normal模式:yy31p -> v31j后,然后可选择以下方法其一
    1)  :'<,'>s/Fun(\zs\d*\ze/\=line(".")-line("'<")+2 
         :'<,'>s/\zs\d*\ze$/\=line(".")-line("'<")+1 
    2) let n=1 | g/Fun(\zs\d*/s//\=n/ | let n+=1
        let n=0 | g/\zs\d*$/s//\=n/ | let n+=1
    参考地址:
        vi/vim使用技巧: 替换的巧妙使用(1)
4. 批量行操作
    1) 插入注释:ctrl+v(gvim下ctrl+q) -> hjkl(左下上右)选择插入位置 ->shift+i(I)输入所需文字 -> ESC 
        取消注释:ctrl+v(gvim下ctrl+q) -> hjkl(左下上右)选择删除位置 -> d -> ESC
    2) 插入注释::1,10s/^/#/g 
        取消注释::1,10s/^#//g
    3) //为注释符时,可以用#取代/的作用,就不需要转义
         插入注释::1,10s#^#//#g 
         取消注释::1,10s#//##g
    4) 删除空白行 :g/^$/d
        删除包含空格的空行 :g/^\s*$/d
        删除以空格或tab从开头到结尾的空行  :g/^[ |\t]*$/d
        删除以#开头的行 :g/^#.*$/d  或 :%s/^#.*$\n//g
    5) 行尾操作
        gg -> ctrl+v/ctrl+q -> G -> $ -> 输入行尾要插入的内容 -> ESC
    6) 宏录制
        比如 有n行文字 Just a test. 要求把偶数行的a改成another
        gg -> qm(记录操作过程到m寄存器中) -> j$ 移动到下一行行尾 -> b跳到要修改的单词位置 -> caw 删除单词并重新输入新单词 
        -> ESC -> j -> q(结束记录过程) -> normal状态下输入1000@m,重复操作记录
    7) .命令重复最近一次的编辑操作
        参考网址:
            
            vim 删除以#开头的、 删除空白行、 加释  
            
5. 删除重复行
    如下几个方法都是必须先排序  :sort
    1) :sor[t] ur /^/
    2) :g/^\(.*\)$\n\1$/d
    3) :g/\%(^\1$\n\)\@<=\(.*\)$/d
    4) :g/\%(^\1\>.*$\n\)\@<=\(\k\+\).*$/d 
    5) :%s/^\(.*\)\(\n\1\)\+$/\1/g 
    参考地址:
        vim删除重复行 (走过弯路的人血泪总结)
        Vim 中的正则表达式
        


阅读(1006) | 评论(0) | 转发(0) |
0

上一篇:linux yum配置

下一篇:日历控件

给主人留下些什么吧!~~