vim编辑器



            在Linux的学习中,无论是编写脚本还是修改文件内容,我们最经常用的就是vim编辑器.vim编辑器功能十分强大,如今不仅仅只应用在Linux中.今天就来介绍一下vim编辑器的功能

进入和退出vim

    进入:

  在终端输入vim 文件名 ,自动进入vim,,该文件名如果不存在则建立了一个空的名字为 刚才输入的文件,若存在,则继续编辑

    退出:

ESC切换到命令模式下,输入

:q 未保存就退出,系统会提示是否保存

:q! 不保存强制退出

:wq 保存退出

:wq!:x!当文件对当前用户权限为read-only时,可以强制保存并退出(仅限root和当 前文件的owner

 

vim的三种模式:

命令模式(normal)进入vim默认模式:

输入作为编辑命令,内容不会出现在屏幕上,输入错误系统会提示.

之后详细介绍命令模式下的操作

插入模式(insert):

i: insert, 在光标所在处输入

       I:在当前光标所在行的行首输入

       a: append, 在光标所在处后面输入

       A:在当前光标所在行的行尾输入

       o: 在当前光标所在行的下方打开一个新行

      O:在当前光标所在行的上方打开一个新行

 

扩展(EX)模式:

 : 为指令,出现在屏幕最后一行,输入都会作为指令

指令内容如上退出命令

ESC两次会返回命令模式

 

命令模式的操作:

             字符跳转:

                        H/J/K/L 分别将光标向 左///右 移动一格

             单词跳转:

                        w 下个单词词首

          e 当前或者下个单词词尾

            页面跳转:

                       H  页首

         M 页中

         L  页底

            行间移动:

                      gg 第一行

        G 最后一行

            行首尾之间

                      ^  行首第一个非空白字符

 0  行首

 $  行尾

             翻屏操作:

                      Ctrl+f 向文件尾部翻一屏

        Ctrl+b 向文件首部翻一屏

        Ctrl+d 向文件尾部翻半屏

       Ctrl+u 向文件首部翻半屏

             字符编辑:

                     ~  转换大小写

       X  删除光标处字符

             替换命令:

                      r  替换光标所在处字符

       R  进入replace 模式

            删除: d

             dd  删除光标所在行

                    d字符跳转,单词跳转,行首尾之间操作结合均和实现相应删除操作

             复制: y

             y  复制光标所在行

             yy  复制行

             y字符跳转,单词跳转,行首尾之间操作结合均和实现相应复制操作

             改变:c

             c  修改之后之间进入insert模式

             cc 删除当前行并输入新的内容

             c字符跳转,单词跳转,行首尾之间操作结合均和实现相应修改操作

             粘贴: p

             p 缓冲区若存的为整行,则粘贴当前光标所在行的下方,否则粘贴在光标后

             P 缓冲区若存的为整行,则粘贴当前光标所在行的上方,否则粘贴在光标前

            撤销操作: u

                  u撤销最近的修改

                  U撤销该行的所有修改

                  . 重复前一个操作

                  n. 重复前 一个操作n次

 

扩展命令

        地址定界:

                :start_pos,end_pos

                . 当前行

               $ 最后一行

               % 全文  %=1,$

 

              :/pat1/,/pat2/ 从第一次被pat1模式匹配到的行开始,一直到第一次被pat2匹配到的行结束

              .,/pat/

              /pat/,$

              和编辑命令一起使用

             d 删除范围内的内容

             y 复制范围内的内容

             w file 将范围内的行另存至指定文件中

             r file 在指定位置插入指定文件中的所有内容

        查找替换:

               /pattern 从光标处往后找

               ?pattern 从光标处往前找

               s/查找内容/替换内容/修饰符

               修饰符: i 忽略大小写

        g 全局替换

               查找替换的分隔符/可替换为其他字符,@ ,#, ?

               注意:替换内容可以用基本正则表达式

        设置属性:set

              行号:

                    set number    set nu

                    set nonumber    set nonu

            括号成对匹配:

                   set showmatch    set sm

                   set nosm

            自动缩进:

                   set ai

                   set noai

           高亮搜索:

                   set hlsearch

                   set nohlsearch

           语法高亮:

                  syntax on

                 syntax off

           忽略字符大小写:

                 set ic

                 set noic

                             博主这篇博客只是把比较经常用到的功能介绍给大家,还有许多功能需要大家慢慢摸索.

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

(0)
swannswann
上一篇 2017-08-05 16:11
下一篇 2017-08-05 16:43

相关推荐

  • linux系统及简单使用

    简介:CentOS(Community Enterprise Operating System)社区企业操作系统,安全和稳定性较好,有优秀的社区支持。   Linux系统的原则: 1、由单一目的的较小的程序程序组成 2、一切皆文件 3、避免捕获用户接口 4、配置文件保存在文本中 5、链接程序完成复杂的功能   Linux系统安装: 英文安…

    Linux干货 2017-07-15
  • 0809行编辑器sed

    sed :Stream EDitor, 行编辑器  sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出或者使用-i选…

    Linux干货 2016-08-10
  • Linux基于OpenSSL实现私有CA构建

    前言 随着互联网的迅猛发展,网络通信已经成为传递信息的主要途径。而通信时的数据传输大部分却是明文传输的,在网络这个不安全的环境下,如果没有一套数据加密机制,就会导致敏感信息和重要数据泄露,引起不可估量的损失。而OpenSSL正好弥补了这一缺憾,那什么是OpenSSL呢?OpenSSL是一套强大的具有加密功能的组件,它包含libcrypto(公共加密库)、li…

    Linux干货 2015-04-13
  • 用户管理、组管理、权限管理、文本处理工具应用示例

    用户管理、组管理、权限管理、文本处理工具应用示例 1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限 [root@localhost ~]# cp -a /etc/skel/ /home/tuser1/ [root@localhost ~]# chmod -R go= /hom…

    Linux干货 2017-07-23
  • 系统启动流程相关概念

    前言: 了解系统内核基本知识 内核功能:进程管理、内存管理、网络协议栈、文件系统、驱动程序、安全功能等  用户空间:应用程序其中有进程或者线程 运行中的系统可分为两层:内核空间、用户空间  内核设计流派:  单内核设计:把每种功能集成于一个程序中;例如:linux 微内核设计:每种功能使用一个单独的子系统实现;例如:Window…

    Linux干货 2016-09-19