练习-vim的使用

vi编辑器是linux上最常用的编辑器,vim是vi增强版,

一、vim的几种模式

    编辑模式、插入模式、命令行模式   

 编辑模式:可以进行光标移动,字符删除,行的增删复制粘贴等操作
 插入模式:对字符进行编辑,
 命令行模式:通过各种命令进行保存,查找,替换,环境设置等操作

    模式的切换

默认vim打开时处于编辑模式,使用a,A,i,I,o,O进行插入模式
当入于插入模式时,左下角会显示insert,使用esc键,回到编辑模式
在编辑模式下使用:进入命令行模式,最下行将显示输入的命令,使用ESC键,回到编辑模式

二、文件操作

vi filename #使用编辑器打开文件
:w          #保存文件
:w filename #保存到某个文件
:q          #退出,文件未被修改时可直接退出,已经修改时会报错
:q!         #退出不保存
:wq         #退出并保存

三、光标的定位

   单个字符定位

h #左
j #下
k #上
l #右

   单词定位

w   #下一个单词首部
b   #当前或上一个单词首部
e   #当前或下一个单词尾部

行定位

^        #定位到行首
0        #定位到行首第一个非字空字符
$        #定位到行尾
G         #定位到文档尾部
gg         #定位到文档首部
#g         #定位到第#行

屏幕定位

    H     #光标定位到屏幕顶部
    M     #光标定位到屏幕中间
    L     #光标定位到屏幕底部
    zt    #将光标所在行,翻屏至屏幕最顶部
    zz    #将光标所在行,翻屏至屏幕中间
    zb    #将光标所在行,翻屏至屏幕最底部

四、进入插入模式

在编辑模式下使用a,A,i,I,o,O进行插入模式,各快捷键的作用如下 :

a    #在光标位置的右边插入字符
i    #在光标位置的左边插入字符
A    #在光标所在的行尾插入字符
I    #在光标所在的行首插入字符
O    #在光标所在行的上面插入一行
o    #在光标所在行的上面插入一行
R    #替换光标所在位置和后面的文本

五、删除、复制、粘贴

       dd    #删除当前的整行
       d$    #删除光标到行尾的内容 
       d0    #删除光标到行首的内容,包括行首的空白字符
       d^    #删除光标到行首的内容,不包括行首的空白字符
       #dd   #删除包括光标所在行向后#行
       dw    #删除光标到单词尾部,包括单词尾部的空格
       de    #删除光标到单词尾部,不包括单词尾部的空格和标点符号

      剪切功能

 #在使用dd删除整行后,vim会将删除内容放在寄存器中,
 #此时使用p命令会在光标所在的下一行,插入dd所删除的行

      复制

yy   #复制当前行
#yy  #复制从当前行往后的#行

     粘贴功能

#使用p命令将复制的内容在下一行开始粘贴

六、查找

      要编辑模式下输入/string, 对string字符串进行查找

       n    #查找下一个
       N    #查找上一个

      使用?string代替/string,可实现逆序查找

        %    #光标放在一个括号上时,可查找配对的括号

七、替换

    :s/old/new     #在一行内替换第一个匹配到的old为新的字符串new  
    :s/old/new/g    #在一行内替换所有的old为new 
    :%s/old/new/g   #在文件内替换所有old为new 
    :%s/old/new/gc   #加c,在替换时询问用户是否替换

八、其它命令键

    ctrl + g   #显示当前行信息,
    u          #撤销
    ctrl + r    #撤销后重做
    ctrl + f    #下翻页
    ctrl + b    #撤销后重做
    :set num    #显示行号

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/21510

赞 (0)
N21-沉舟N21-沉舟
上一篇 2016-07-04 11:35
下一篇 2016-07-04 11:35

相关推荐

  • 如何编译源码安装

    #include <stdio.h> main() {printf(“Hello World!\n”); } gcc -o hello hello.c 在编写hello.c的时候出现问题一直找不到,后来发现是因为我安装的gcc有问题 我在安装的时候是用rpm -ivh gcc –nodeps忽略依赖关系直接安装…

    2017-08-19
  • Trap命令简介

     Trap命令简介     一、基本概念  trap是一个shell内建命令,它用来在脚本中指定信号如何处理。比如,按Ctrl+C会使脚本终止执行,实际上系统发送了SIGINT信号给脚本进程,SIGINT信号的默认处理方式就是退出程序。如果要在Ctrl +C不退出程序,那么就得使用trap命令来指定一下SIGINT的处…

    Linux干货 2015-05-11
  • 网络班第27期第二周作业

    1、 Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关的实例演示。 cp命令:copy 文件à>目录 文件à>文件 目录->文件(报错)           目录->目录 常用选项:     &nbsp…

    2017-07-31
  • grub应用 (Blog 10)

    grub1.x 、grub2.x详解

    2017-11-27
  • 我与Linux的第一次亲密接触

        作为一个新手,经过一周的学习,我对Linux目前有了些许的了解,从Linux的发展史中,开源共享精神深深的感染了我,也使得我对Linux的兴趣更加浓厚。对于一个一直翘计算机课的我来说,入门和基础是一项非常艰巨的任务,初期为了搭建学习的环境,也是费了不小的功夫,相信许多萌也对此有很大的感触,在这里,我来和大家分享一下如何去构建环境。…

    Linux干货 2017-03-26

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-04 13:41

    写的很好,总结的有点少,是不是还有一些,加油