VIM Note

vim总结:
模式:编辑模式

插入模式

            末行模式

                    内置命令行接口

        打开文件

        vim +# 打开文件后直接处于文件的#行行首

                +/PATTER 打开文件后直接处于第一个被PATTER匹配到行的行首

                + 直接处于尾行行首

模式转换

编辑模式:默认模式,打开文件后处于编辑模式

            编辑模式–>插入模式:

                    i: insert 光标所在地方输入

                    a:append 在光标所在的后方输入

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

                    I:大写i 在光标所在行的行首插入

                    A 在光标所在行尾插入

                    O 在光标所在行的上方插入新行

            插入模式–>编辑模式 ESC键

            编辑模式–>末行模式 使用 冒号 :

            末行模式–>编辑模式 ESC键 一次或两次

关闭文件

ZZ:编辑模式下保存并退出

    wq!:末行模式 w保存,q退出 ! 强制执行

       x :末行模式  保存退出

     w /path/to/filename 保存到某文件内当前文件不退出 另存为效果

光标跳转

字符间跳转

            k,j,h,l 上下左右 或上下左右的键盘 

            #j,k,h,l #表示数字,一次跳转#个字符    

    单词间跳转

            w 下一个单词词首

            b 当前或前一个单词词首

            e 当前或下一单词的词尾

            # command 跳转#指定个数的单词

    行首行尾跳转

            ^ 跳转至行首第一个非空白字符

            0 跳转至行首

            $ 跳转至行位

    行间跳转

            G 跳转至最后一行

            # G 跳转至第#行

            1G,gg 跳转至第一行

翻屏

ctrl +f  向文件尾翻一屏

           +b 向文件首部翻一屏

           +d 向文件尾部翻半屏

           +u 向文件首部翻半屏

        enter 安行向后翻

vim的编辑命令:
字符编辑

x 删除光标所在处的字符

                #x删除光标所在处起始向后#个字符

               xp 交换光标所在处字符和后面字符的位置 
        替换命令 

                r替换光标所在处的字符 r后跟索要替换的字符   
        删除命令

                d 删除命令,可结合光标跳转字符,实现范围删除

                d$ 删除光标所在到行尾

                d^ 删除光标到行首

                    下面命令支持#dw 删除光标到下#个单词词首

                dw 删除光标到下一个单词词首

                de 删除光标所在到词尾

                db 删除光标所在到词首

                dd 删除整行

                #dd 从光标所在行开始删除#行    
        粘贴命令

                p 粘贴缓冲区的内容如果为整行,则粘贴在光标所在行的下方,否则粘贴至光标所在处的后方

                P 粘贴缓冲区的内容如果为整行,则粘贴在光标所在行的上方,否则粘贴至光标所在处的前方
        复制命令(yank)

                y 复制,工作行为相似与d命令    
        改变命令(change c)

                编辑模式–>输入模式-

                    删除后进入输入模式

                操作类似d命令
   其他编辑操作

          可视化模式(选定区域)

                v 按字符选定

               V 按行选定

                 结合编辑命令使用

       撤销(undo)操作

                u 撤销此前的操作(可撤销最近50次操作)

                       #u 撤销此前的#个操作

            撤销此前的撤销操作

                ctrl+r

         重复执行前一个编辑操作

           vim 自带联系教程

                   vimtutor.

vim 末行模式
内建命令行接口

(1)地址定界

                         :m 特定第m行  

                         :m,n 第m行到第n行    

                         :m,+n 第m行后的n行    

                         : . 当前行

                         :$最后一行

                         : % 表示全文

                         :/pattern/ 光标起始第一次被模式所匹配到的行

                          /pattern1/,/pattern2/ 光标起始第一次匹配pattern1到的行开始到第一次匹配到pattern2的行结束

        可与编辑命令一同使用,实现编辑操作

                    w /path/to/file 将范围内文本保存到其他地方

            (2) 查找

                /pattern 从当前光标开始向尾部查找能被匹配到的字符串并将光标移到查找到的字符串

                ?pattern 从当前光标开始向文件首部查找能被匹配到的字符串并将光标移到查找到的字符串

                n 下一个被查找到的字符串

                N 上一个被查找到的字符串

             (3)查找替换(替换为无实现删除效果)

                   s 末行模式的命令

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

                    查找的内容:可以用正则表达式

                    替换的内容:不能使用模式,但可引用

                                如果查找的内容部分使用了分组符号可在后面替换的内容使用后向引用。

                                直接引用查找模式匹配到的全部文本(使用&符号)

                    修饰符:i 查找的内容忽略大小写

                                   g 全局替换(默认只替换匹配到行的第一次替换)

                     可把分割符替换成其他非常用内容

vim 多文件功能

vim file1 file2…

多文件

        末行模式 next 切换到下一个文件

                       prev 切换到上一个文件

                       first   切换到第一个文件

                        last    切换到最后一个

        退出所有文件

                    wqall 保存所有文件退出

                    wall 保存所有文件

                    qall 退出所有文件

多窗口

    使用ctrl+w 方向键 窗口间切换

    vim -o|O

    -o 水平分割窗口

    -O 垂直分割窗口

单个文件也可分割为多个窗口进行查看

    ctrl+w s 水平分割窗口

    ctrl+w  v垂直分割窗口

定制vim的工作特性

末行模式下设定仅对当前vim有效

    永久有效需修改配置文件

            个人: vim  ~/.vimrc

            全局 : /etc/vimrc

    1、行号   

          末行模式 set nu 显示行号

                          set nonu 取消行号

     2、括号匹配高亮显示

                set  showmatch ,set sm

                set noshowmatch,set nosm

     3、自动缩进功能

            set ai

            set noai

     4、高亮搜索

            set hlsearch

            set nohlsearch

    5、语法高亮

            syntax on

            syntax off

    6、忽略大小写

            set lc

            set nolc

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

(0)
N27_DanryN27_Danry
上一篇 2017-08-14 08:54
下一篇 2017-08-14 09:52

相关推荐

  • shell编程、yum的使用

    shell编程、yum的使用 一、shell编程 1、while的特殊使用 while 循环的特殊用法(遍历文件的每一行): while read line; do      循环体 done < /PATH/FROM/SOMEFILE   依次读取/PATH/FROM/SOMEFILE 文件…

    Linux干货 2016-08-21
  • FHS文件系统各目录功能

    前言:     文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易。linux的哲学是一切皆文件,linux系统中的一切包括设备文件,我们都能在linux的倒置树状文件系统中找到相对应的文件。所以清楚的明白根目录下的每个子目录包含什么样的文件是很有必要的。我们将以Filesystem Hierarchy Standar…

    Linux干货 2016-10-17
  • ContOS 7 安装

    在虚拟机中安装ContOS 7,自定义4个分区
    虚拟机使用ISO镜像文件安装,网络使用桥接模式,内存大小设置为1224MB(安装桌面比较大)

    2018-03-13
  • CentOS 5.0系统启动流程

    注:CentOS系统5.x,6.x和7.x的启动流程不同,所以本文仅讨论CentOS 5.x的启动流程。 1. POST加电自检 服务器在开机之后首先会先进行硬件的检测,在开机界面我们可能会看到检测硬盘,cpu或raid卡等信息,此界面即硬件自检界面。 2. BIOS引导 BIOS(BootSequence)用于通过指定的引导装置引导系统启动。 3. Boo…

    2017-05-14
  • 磁盘分区命令与文件系统简介

    磁盘分区命令与文件系统简介   这一次的博客是整理一下这周所学的磁盘分区fdisk与mount命令,内容不难但是比较琐碎,需要记忆的命令比较多,刚好借着博客来复习一下命令,加强一下记忆。废话不多说,开始! 首先做一下准备工作:在虚拟机上增加一个或多个磁盘,这个比较简单,在VMware虚拟机上方点虚拟机右键—>设置&#82…

    2017-08-19
  • 第10周作业(上)

    第10周作业 1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情)。CentOS系统启动详细的过程如下(以CentOS7为例): 加电自检(POST)按下电源开关,BIOS系统随即开始加电自检,检查CPU、内存、主板及各接口、硬盘、键盘、光驱等,检测它们的好坏。 读取启动顺序检查完成后,BIOS会根据预先设定好的启动顺序去挨个寻找可引导…

    Linux干货 2017-01-03