现在一般在windows下面对txt文档操作的时候,我一般使用gvim软件来操作,虽然没有unix/linu下面的正宗,并且很多命令没有,但是还是有很多方便之处的

下面是重温vim命令时,我我自己以前不曾用过的一些命令

  在linux/unix的terminal中输入vimtutor可以打开vim的帮助文档(是中文的)

1.u/U/ctrl+r

u:这个不用说,相当于windows下面的ctrl+z,按下一次撤销一次先前进行的操作

U:这个我以前一直没有用到,因为那个时候搞不懂干什么的,现在知道他是 对当前操作的整行的内容进行修正,也就是说你在当前一行一次性做的所有操作都将恢复。

ctr+r:这个是一个撤销命令,就是对上一次命令的撤销(注意,这个是上一个命令(只针对一个命令)的一次撤销,注意是一次,按下多次ctrl+r的话,是撤销多次,但是还是针对同一个命令)。举个例子:

abcdefghijklmn:我用x删除了从b到g的内容,结果如下:

ahijklmn:然后我使用u回复了d-g的内容,结果如下:

adefghigklmn:然后我按下ctrl+r,结果是撤销了第二部的u的操作,一直按ctrl+r,最后的结果是:

ahijklmn:之后你无论怎么按ctrl+r,结果都是这样,不会回复用x删除的第一步的内容。这就说明了ctrl+r是针对上一次的同一个命令的

2.ctrl+g

这可查看当前光标所在的位置,会列出当前vim对应文件的全路径,这个功能有时候是很有用的,比如当你想要看当前编辑文件的全路径的话就会用到。

3.逆向搜索?

我们知道/这个是搜索的命令,不过这个是正向搜索,也就是从开头项结尾

而?+内容是逆向搜索,从结尾向开头搜索,用的地方不是很多

4.替换命令

:s/old/new :只替换一个(光标所在行)

:s/old/new/g:替换一行的内容

:#,#s/old/new/g:替换从几行到几行的内容

:%s/old/new/g:替换全文见内容

:%s/old/new/gc:这个命令很牛逼,加了一个c,会提示用户是否替换,有点喝windows一样了,和和

这个命令很常用,不过经常忘记前面的s和%s的区别

5.在vi中使用外部命令

:!ls -l

就是多加了一个!

6.w保存到指定文件和选择性的保存

:w a.txt

保存到了a.txt,就相当于另存为了

:#,# w a.txt

保存指定行数之间的内容到另一个文件中

7.r 把另一个文件内容弄进来

:r b.txt

把b.txt得内容插入到光标所在点后面

8.A

大些A是直接把光标移动到行尾进行插入

9.set ic

:set ic

不区分大小写,这样的话,你用/来搜索的话,就不区分大小写了

10.搜索到结果进行高亮显示

:set hls is

去掉的话使用

:set nohls

vim中的一些高级命令的使用的更多相关文章

  1. vim中翻页的命令

      整页翻页 ctrl-f ctrl-b f就是forword b就是backward 翻半页 ctrl-d ctlr-u d=down u=up 滚一行 ctrl-e ctrl-y zz 让光标所杂 ...

  2. vim中常用折叠命令

    最常用3个折叠命令 .反复打开关闭折叠:za (意思就是,当光标处折叠处于打开状态,za关闭之,当光标处折叠关闭状态,打开之) .打开全部折叠:zR .关闭全部折叠:zM 小试折叠: :set fdm ...

  3. 再谈vim中多窗口的编辑

    参考:http://blog.csdn.net/shuangde800/article/details/11430659 很好 鼠标在各个窗口间循环移动: ctrl+w+(小写的 hjkl), &qu ...

  4. 再谈vim中多窗口的编辑 ctrl+w+H窗口位置最大化和互换等操作

    参考:http://blog.csdn.net/shuangde800/article/details/11430659 很好 鼠标在各个窗口间循环移动: ctrl+w+(小写的 hjkl), &qu ...

  5. Vim 中使用cscope

    使用cscope碰到的问题 1. E568: duplicate cscope database not added 根据提示,cscope数据库重复添加了,我使用的是vim7.2版本,而这个版本在已 ...

  6. vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb

    vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help vimgdb 在UNIX系统最初设计时,有一 ...

  7. Vim 中进行文件目录操作

    Vim 中进行文件目录操作 当前文件名 我们知道Vim有48个寄存器,其中%只读寄存器中保存着当前文件路径. 例如在/home/harttle/下打开src/main.cpp,我们打印%的值: :ec ...

  8. vi/vim高级命令集粹

    vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有 ...

  9. vim中替换命令

    在VIM中进行文本替换:       1.  替换当前行中的内容:    :s/from/to/    (s即substitude)         :s/from/to/     :  将当前行中的 ...

随机推荐

  1. 《ArcGIS Engine+C#实例开发教程》第七讲 图层符号选择器的实现2

    原文:<ArcGIS Engine+C#实例开发教程>第七讲 图层符号选择器的实现2 摘要:在第七讲 图层符号选择器的实现的第一阶段中,我们完成了符号选择器窗体的创建与调用.在第二阶段中, ...

  2. Show username instead of "System Account" in SharePoint 2010

    Problems: When I load my local SharePoint site, the account always show as "System Account" ...

  3. 绕过kernel模块版本校验检测

    kernel module version check bypass . 举例说明 . 内核是怎么实现的 . 怎样去突破 . 总结 . 举例说明 Linux内核版本很多,升级很快,2个小内核版本中内核 ...

  4. bios作用

    BOIS有四个作用: 一:POST 怎么讲呢? 也就是: Power On self rest ,检测主板各个设备,并sel error log. 二:计算机参数配置,也就是硬件和功能设置.例如内存啊 ...

  5. phpcms v9会员中心文件上传漏洞

    漏洞版本: phpcms v9 漏洞描述: PHPCMS V9采用OOP(面向对象)方式自主开发的框架.框架易扩展,稳定且具有超强大负载能力. phpcms v9会员中心上传头像处可未经过充分过滤,攻 ...

  6. BZOJ1895: Pku3580 supermemo

    1895: Pku3580 supermemo Time Limit: 15 Sec  Memory Limit: 64 MBSubmit: 77  Solved: 47[Submit][Status ...

  7. PowerDesigner一些小技巧

    1.安装PD v12.0版 2.由pdm生成建表脚本时,字段超过15字符就发生错误(oracle) 原因未知,解决办法是打开PDM后,会出现Database的菜单栏,进入Database - Edit ...

  8. date命令--修改linux系统时间

    在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便. 1.命令格式: date [参数 ...

  9. 数据挖掘R与SQL

    本文在Creative Commons许可证下发布 对于数据挖掘专业网站 KDnuggets网站的Poll持保留态度,但它的结果毕竟代表了某一类人群的使用偏好,尤其是在语言角度. 我们看排名前5位的语 ...

  10. 动态代理入门(jdk)

    动态代理就是aop的核心,动态代理简单的就是通过创建一个代理对象,然后把原来的方法增强.很抽象,例子是王道.jdk中提供了动态代理的实现,但是它是针对接口,如果要实现动态代理,需要被代理对象的接口.这 ...