Vim编辑器初步接触

一、概要

    vim(IMproved)编辑器是vi(visual interface)编辑器的增强版,它是Linux系统编辑文本文件重要的工具之一,也是最基础的编辑工具。它可以执行输出、删除、查找、替换、块操作等众多文本操作。学会它之后,你使用Linux系统的路将更加平坦。

二、使用方法

    1、vim操作模式

                (1),编辑模式(command mode):也叫做命令模式,控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入输入模式(Insert mode)下,或者到末行模式。            

                (2),输入模式(Insert mode):只有在Insert mode下,才可以做文字输入,按[ESC]键可回到命令行模式。

                (3),末行模式 (last line mode):将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。vim内置的命令行接口,执行vim的内置命令。

    2、vim的基本操作

                (1),打开文件:vim [option]…【FILE】…

                (2),3种模式间的切换:

                                     a、在命令模式下使用【i】键进入输入模式;

                                     b、在输入模式下使用【ESC】键退出输入模式并进入命令模式;

                                     c、在命令模式下使用【:】键进入末行模式;例如

                      : w filename (输入 [w filename]将文章以指定的文件名filename保存)

                      : wq (输入[wq],存盘并退出vim)

                      : q! (输入q!, 不存盘强制退出vim)

                      : x (执行保存并退出vim)

   3、vim常用快捷键

       (1) 移动光标

                    vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母[h]、[j]、[k]、[l],分别控制光标左、下、上、右移一格。

                    按[ctrl]+[b]:屏幕往“后”移动一页。

                    按[ctrl]+[f]:屏幕往“前”移动一页。

                    按[ctrl]+[u]:屏幕往“后”移动半页。

                    按[ctrl]+[d]:屏幕往“前”移动半页。

                    按[gg]:移动到文章的首行。

                    按[G]:移动到文章的最后。

                    按[$]:移动到光标所在行的“行尾”。

                    按[O]: 移动到光标所在行的“行首”

                    按[^]:移动到光标所在行的“行首”的第一个非空白字符。

                    按[w]:光标跳到下个字的开头

                    按[e]:光标跳到下个字的字尾

                    按[b]:光标回到上个字的开头

                    按[#l]:光标移到该行的第#个位置,如:5l,56l。

       (2)编辑文本

删除

                    [x]:每按一次,删除光标所在位置的“后面”一个字符。

                    [#x]:例如,[6x]表示删除光标所在位置的“后面”6个字符

                    [X]:大写的X,每按一次,删除光标所在位置的“前面”一个字符。

                    [#X]:例如,[20X]表示删除光标所在位置的“前面”20个字符。

                    [dd]:删除光标所在行。

                    [#dd]:从光标所在行开始删除#行。

                    [yw]:将光标所在之处到字尾的字符复制到缓冲区中。

                    [#yw]:复制#个字到缓冲区

复制

                    [yy]:复制光标所在行到缓冲区

                    [#yy]:例如,[6yy]表示拷贝从光标所在的该行“往下数”6行文字。

                    [p]:将缓冲区内的字符贴到光标所在位置。

恢复上一次操作

                   [u]:如果您误执行一个命令,可以马上按下,回到上一个操作。按多次“u”可以执行多次回复。

                   [ctrl+r]:撤销此前的撤销操作

                   [.] :重复前一条命令

 修改

                    [cw]:更改光标所在处的字到字尾处

                    [c language=”""""""#w""""""”][/c]:例如,[c3w]表示更改3个字

 查找和替换

                    #:查找第#行

                    .:查找当前行

                    $:查找最后一行

                    %:全文查找,相当于1,$

                    g:global,全行替换

                     i:不区分字符大小写

在末行模式下查找和替换的格式:s/查找模式/要替换成的内容/gi

            a、查找模式:可以使用正则表达式

            b、要替换成的内容:不能使用模式,仅能使用引用

           举例说明:

               复制/etc/rc.d/init.d/functions至/tmp目录,替换/tmp/functions文件中的/etc/sysconfig/init为/var/log

                                                           :   cp /etc/rc.d/init,d/function /tmp

                                                           :  vim /tmp/functions

1428037829688364.png

                                                           :%s@/etc/sysconfig/init@/var/log@gi

1428037831448440.png

通过上图已经看见/etc/syscongfig/inint已经全部被替换成/var/log。

此外,vim也是一个多窗口、多文件的编辑器;     

多文件模式:

    :next,进入下一个文件

    :previous,进入上一个文件

    :last,进入最后一个文件

    :first,进入第一个文件

    :wqall,保存并退出所有文件

多窗口模式:

      -o:水平分割

      -O:垂直分割

      窗口间切换:ctrl+w+方向键

窗口属性定义:

    :set nu,显示行号

    :set nonu:不显示行号

    :set ai 自动缩进

    :set ic:忽略字符大小写

    :set noic:不忽略字符大小写

语法是否高亮:

        syntax on|off

搜索是否高亮:

        set nohlsearch|hlsearch

以上是vim编辑器的初步了解,通过以后的学习会更加深入!!

原创文章,作者:傲剑,如若转载,请注明出处:http://www.178linux.com/2472

(0)
傲剑傲剑
上一篇 2015-04-03
下一篇 2015-04-03

相关推荐

  • 硬软链接的区别 节点 以及重定向和管道

    INODE全称叫index node 表中包含文件系统所有文件列表   一个节点是在一个表项 包含有关文件的信息 ( 元数据 ) 包括: 文件类型,权限,UID,GID 链接数(指向这个文件名路径名称个数) 该文件的大小和不同的时间戳 指向磁盘上文件的数据块指针 有关文件的其他数 1 文件引用一个是 inode号   2 我们是通过文件名…

    Linux干货 2016-08-12
  • linux下zip包的压缩与解压

    linux zip 命令详解  功能说明:压缩文件。  语 法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件…][-i <范本样式&gt…

    Linux干货 2017-04-10
  • Hadoop HDFS分布式文件系统设计要点与架构

    Hadoop简介:一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件…

    Linux干货 2015-04-13
  • 利用nginx实现基于传输层的四层负载均衡

    nginx利用ngx_stream_core_module实现四层的负载均衡服务。作为四层负载均衡nginx和lvs的区别在于: lvs工作于内核层,相对来说效率更高,性能更强; nginx工作于用户空间; lvs不会受到套接字数量的限制; nginx作为四层负载均衡也需要监听套接字来和客户端,后台服务器进行连接,会受到套接字数量限制,不过这个问题可以通过k…

    2017-07-03
  • sed简介及常见用法

    sed是一个文本流处理器,配合正则表达式用可以实现很多文本处理操作。 和grep一样,sed是一行一行的处理的。sed处理文本时,首先会将源文件复制一份到内存中,然后将文本一行一行拿到模式空间内进行操作,最后输出到标准输出,即屏幕上。 在模式空间中,每一行都会根据用户给的条件进行匹配,匹配到了进行编辑后输出,没有匹配到,直接输出到标准输出。sed除了模式空间…

    2018-01-04
  • 系统管理之程序包管理(二)yum详解

    系统管理之程序包管理(二)yum详解:     上节向大家介绍了程序包管理的理论和rpm命令的使用,本篇文章接着向大家介绍rpm的前端使用工具,方便大家更快捷的管理,使用rpm包,提高工作效率。 一 概论: Centos:yum,dnf 两个rpm前端工具 YUM :yellow dog, Yellowdog,Upda…

    Linux干货 2016-08-24

评论列表(2条)

  • stanley
    stanley 2015-04-03 15:23

    可以尝试14号字体,文章的优美度会提升不少。另外记得加上标签提高搜索命中率哦

    • jxf_tide
      jxf_tide 2015-04-07 09:04

      @stanley好的,,以后会注意