最開始学习过vim,见 http://blog.csdn.net/u011848617/article/details/12837873

之后以前不了了之,当再次学习后,发现经常使用命令的掌握还是不可缺少的,以下是我整理的vim经常使用命令:

//下面操作均是在命令行模式下运行的

/*启动vim*/

vim---------------------不指定文件名称,在保存文件时指定文件名称

vim filename------------打开指定文件,此文件能够存在也能够不存在

vim +n filename---------进入vim,光标停在第n行開始处

vim +filename-----------进入vim,光标停在文件最后一行開始处

vim +/string filename---进入vim,光标停在第一个字符串处

/*保存文件并退出vim*/

w:---------保存当前正在编辑文件,但不退出vim

w filename-----将当前文件内容保存至filename指定的新文件里,若该文件存在则产生错误,不退出vim

w! filename-----将当前文件内容保存至filename指定的新文件里,若该文件存在则覆盖原文件,不退出vim

q:--------------不保存直接退出vim,若文件有修改但未保存将产生错误

q!:--------------不保存直接退出vim,若文件有修改则修改内容将丢失

wq:--------------保存并退出vim

/*光标的移动*/

0---------------移到当前行行首

$---------------移到当前行行尾

w---------------右移1个字

nw--------------右移n个字

b---------------左移1个字

nb--------------左移n个字

(---------------移到本句的句首,假设已处于本句句首,则移动到前一句句首

)---------------移到下一句句首

{---------------移到本段的段首,假设已处于本段短首,则移动到前一段段首

}---------------移到下一段段首

g---------------移到文件第一行

G---------------移到文件最后一行

/word-----------查找(+n--向下继续查找下一个/+N--向上继续查找下一个)

x---------------向后删除一个字符

X---------------向前删除一个字符

dd--------------删除光标所在行

yy--------------复制光标所在行

p(小写)---------粘贴至下一行

P(大写)---------粘贴至上一行

ctrl+r/.--------反复运行前一操作

u---------------删除前一操作

i---------------从光标所在字符前插入

a---------------从光标所在字符后插入

o---------------从光标所在行的下一行插入

r---------------替换字符

:q--------------离开

:wq-------------保存后离开

:set nu---------显示行号

:set nonu-------取消行号

//文本的查找

?string<Enter> --------- 查找string

n ---------------------- 向文件头方向反复查找

N ---------------------- 向文件尾方向反复查找

//文本的替换

:s/oldstr/newstr -------------- 在当前行用newstr替换oldstr,仅仅替换一次

:s/oldstr/newstr/g ------------ 在当前行用newstr替换全部的字符串oldstr

:1,10s/oldstr/newstr/g -------- 在1~10行用字符串newstr替换全部的oldstr

:1,$s/oldstr/newstr/g --------- 在整个文件里用字符串newstr替换全部的oldstr

再探vim经常使用命令的更多相关文章

  1. 再探VIM配置

    再探VIM配置 最初找到这个发行版spf13-vim,在ubuntu上用的还比较方便,有很多插件:最近在mac上用,总是不兼容vim,用brew安装了最新的vim,还是跟系统不兼容,总是有问题,于是就 ...

  2. 再探gdb经常使用命令

     前面已经有了一篇对gdb经常使用命令的总结.见 http://blog.csdn.net/u011848617/article/details/12838875 这里对眼下学过的gdb命令进行了 ...

  3. vim显示历史命令

    [vim显示历史命令] q: 进入命令历史编辑.类似的还有 q/ 可以进入搜索历史编辑.注意 q 后面如果跟随其它字母,是进入命令记录. 可以像编辑缓冲区一样编辑某个命令,然后回车执行.也可以用 ct ...

  4. 再探ASP.NET 5(转载)

    就在最近一段时间,微软又有大动作了,在IDE方面除了给我们发布了Viausl Studio 2013 社区版还发布了全新的Visual Studio 2015 Preview. Visual Stud ...

  5. vim经常使用命令总结

    vim 选择文本,删除,复制,粘贴   文本的选择,对于编辑器来说,是非常主要的东西,也常常被用到,总结例如以下: v    从光标当前位置開始,光标所经过的地方会被选中,再按一下v结束. V     ...

  6. linux应用之vim的常用命令

    vim 选择文本,删除,复制,粘贴 文本的选择,对于编辑器来说,是很基本的东西,也经常被用到,总结如下: v 从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束. V 从光标当前行开始,光标 ...

  7. c++再探string之eager-copy、COW和SSO方案

    在牛客网上看到一题字符串拷贝相关的题目,深入挖掘了下才发现原来C++中string的实现还是有好几种优化方法的. 原始题目是这样的: 关于代码输出正确的结果是()(Linux g++ 环境下编译运行) ...

  8. vi/vim基本使用命令

    vi/vim基本使用命令 一.总结 一句话总结:1.记住三种模式:命令行模式.插入模式.底行模式:2.记住两个按键功能:i和esc 二.vi/vim基本使用命令 vi/vim 基本使用方法本文介绍了v ...

  9. vi/vim系统编辑命令使用技巧

    01前言 在Linux系统中会有很多的文件信息,这些文件的内容如果需要编辑,就必须借助vi或vim编辑命令. vi是Linux命令行界面下的重要文字编辑器.vim是vi命令的增强版. [语法格式] v ...

随机推荐

  1. jyphon 环境变量配置

    Jyphon 是基于java平台python 的一种实现 官网: http://www.jython.org/ 可以从官网下载 jyphon 安装 下载 jython Installer ,下载之后是 ...

  2. 深入学习微框架:Spring Boot

    Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过 ...

  3. 不使用webview,用手机浏览器的android app

    需求:wap站在手机上以App的形式打开,但不要嵌套WebView,只能以浏览器打开 package com.gzz.whyinzi; import android.net.Uri; import a ...

  4. cocos2d-x关于CCTableView的“乱序问题”的理解

    Cocos2d-x有一个不错的控件CCTableView.之前用的时候发现有cell的顺序错乱和重复出现的问题.后来仔细看了一下源码,发现是自己用法错误.但是网上有人说是一个bug,要改源码.我发现2 ...

  5. jsp获得本地及serverIP的方法

    InetAddress addr = InetAddress.getLocalHost(); String ip = addr.getHostAddress().toString();//获得本机IP ...

  6. Eclipse中导入第三方源码的问题和备用解决方案

    在前篇<配置BeanUtils包,同时也是对导入第三包的步骤说明>中,我已经将[commons-beanutils-1.9.2.jar]包导入,但是在使用BeanUtils进行日期转换的过 ...

  7. CloseHandle(),TerminateThread(),ExitThread()的差别

    线程的handle用处: 线程的handle是指向"线程的内核对象"的,而不是指向线程本身.每一个内核对象仅仅是内核分配的一个内存块,而且仅仅能由内核訪问.该内存块是一种数据结构, ...

  8. linux 怎么使用一个c/c++库

    linux 怎么使用一个c/c++库 使用一个库,库有动态和静态之分. 静态库只要能够编译通过,运行时就没有提示缺少这个库可能,因为把这个库就是这个使用者的一部分了.动态库.两部分.1 库信息的注册 ...

  9. Android服务之PackageManagerService启动源码分析

    了解了Android系统的启动过程的读者应该知道,Android的所有Java服务都是通过SystemServer进程启动的,并且驻留在SystemServer进程中.SystemServer进程在启 ...

  10. [Android学习笔记]View的measure过程学习

    View从创建到显示到屏幕需要经历几个过程: measure -> layout -> draw measure过程:计算view所占屏幕大小layout过程:设置view在屏幕的位置dr ...