最開始学习过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. 499 - What's The Frequency, Kenneth?

     What's The Frequency, Kenneth?  #include <stdio.h> main() { int i; char *suffix[]= { "st ...

  2. Android网络电话软件Sipdroid试用

    Android网络电话软件Sipdroid试用 SipDroid v3.4beta 简介:sipdroid是一款基于网络的语音及视频通话客户端软件,sipdroid本身不经营网络语音服务,仅仅是一款开 ...

  3. Twenty Newsgroups Classification任务之二seq2sparse(2)

    接上篇,SequenceFileTokenizerMapper的输出文件在/home/mahout/mahout-work-mahout0/20news-vectors/tokenized-docum ...

  4. 【Unity3D自学记录】Unity3D网络之Socket聊天室初探

    首先创建一个服务端程序,这个程序就用VS的控制台程序做即可了. 代码例如以下: using System; using System.Collections.Generic; using System ...

  5. FairScheduler的任务调度机制——assignTasks

    首先需要了解FairScheduler是如何在各个Pool之间分配资源,以及每个Pool如何在Job之间分配资源的.FairScheduler的分配资源发生在update()方法中,而该方法由一个线程 ...

  6. Blackboard - 百度百科

    http://wapbaike.baidu.com/view/1969844.htm?ssid=0&from=844b&uid=0&pu=sz%401320_1001%2Cta ...

  7. Swift - 判断设备类型开发兼容的iOS应用(iPad使用分隔视图控制器)

    1,分割视图控制器(UISplitViewController) 在iPhone应用中,使用导航控制器由上一层界面进入下一层界面. 但iPad屏幕较大,通常使用SplitViewController来 ...

  8. Swift - 使用UIDatePicker实现倒计时功能

    如果使用UIDatePicker时将模式设置为CountDownTimer,即可让该控件作为倒计时器来使用.效果图如下:    下面是代码示例: 1 2 3 4 5 6 7 8 9 10 11 12 ...

  9. Nancy.Host的Web应用

    Nancy.Host实现脱离iis的Web应用 本篇将介绍如何使用Nancy.Host实现脱离iis的Web应用,在开源任务管理平台TaskManagerV2.0代码里面已经使用了Nancy.Host ...

  10. 如何为linux释放内存和缓存

    如何为linux释放内存和缓存_华陌飞尘_新浪博客 如何为linux释放内存和缓存    (2011-10-20 10:49:01)        标签:    linux    swap    me ...