zoukankan      html  css  js  c++  java
  • vim编辑器

    vim编辑器

    vim 就是 vi 编辑器的增强版

    作用:编辑文本文件中的内容的工具

    命令历史

    末行模式中,以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。

    启动vim

    在命令行窗口中输入以下命令即可

    vim 直接启动vim  ,会出现一个提示,按:q 退出

    vim filename 打开vim并创建文件,,不能编辑目录。若文件不存在,需要创建并保存。

    . : 一个点表示当前目录下。

    vim的模式

    vi的工作模式

    vim  输入执行就进入命令模式:仅仅可以查看内容,但是不能进行修改(默认)

          进入输入模式: a / i / o.

    输入模式:可以对文件中的内容进行修改,也叫编辑模式,insert是标识。

          左右下方什么都没有时 。  a:光标后追加。append

                      i:插入光标前面。insert

                      o:光标下另开一行。other

               按 ESC 进入命令模式。

    末行模式:此模式可以执行一些命令,命令模式下按 shift +冒号就可以进入。

          按 ESC 进入命令模式。

     vi打开文件

    vi打开文件  :# vi 文件名

    注意:

    1. vi打开文件,如果发现文件是空的,那么说明你所打开的文件是不存在的,(注意命令输入正确,按TAB键补齐路径)

    2. 也就是vi既可以打开现有的文件,也可以创建新文件,只是所创建的新文件内容是空白的

    3. vi有增强版本,称之为vim(建议用vim)

    4. vi是用来编辑文本文件的,不能用来打开目录

    情况1:从命令模式到输入模式

    i:在光标所在位置的前插入内容

    I:将光标移到到行首,然后进入输入模式

    a:将光标向后移到一位,然后进行插入模式(输入的内容会在光标原始位置的后一位。

    A:在当前行尾插入

    o:在光标所在行的下面新开一行,然后进入输入模式

    O:在光标所在行的开面新开一行,然后进入输入模式

    记住 i / o 就可以了。

    命令模式下的常用操作

    第一类操作:复制、移动删除文件内容

    yy:复制光标所在的行

    nyy:复制光标所在的行开始向下的N行

    dd:剪切光标所在的行

    ndd:剪切光标所在的行开始向下的N行

    p(小):粘贴到光标所在行的下

    P(大):粘贴到光标所在行的上面

    D:删除光标所在位置到行尾的内容

    dG:删除光标所在的行到末尾全部的行(配置DHCP时很有用)

    第二类操作:撤销和重复执行的相关操作

    u:撤销上次所指向的操作(相当于windows中 ctrl + z),命令模式下!!      

          撤销 “u” 的撤销操作 ctrl + R 。

    nu:撤销n次操作(n的值最大是50)

    ctrl+r:撤销刚刚所撤销的那个操作,相当于撤销 u 的操作(相当于windows中 ctrl + y)

    .:重复执行上一次所做的操作

    第三类操作:跳转相关的操作

    nG:跳转到第n行

    G:直接跳转到最后一行

     查看行号 : set nu

    0:跳转到行首(会认为空格也是内容,此时会跳转到空格的最前面)

    ^:跳转到行首(不认为空格是内容,此时会跳转到第一个非空字符) or 按 home 键

    $:跳转到行尾   或按end 键

    ctrl+f:向下翻一屏    或者按 pgup 键

    ctrl+b:向上翻一屏   按 pgDn 键

    第四类操作:替换相关操作  (有点鸡肋)

    r:替换一个字符(替换完成之后,自动返回到编辑模式) 

    R:进入替换模式(要想退出替换模式,按esc)

    第五类操作:查找

    /string:在文件中搜索指定的字符串

    输入 /if  ,然后按 n / N,回车。可以找到含有 if 的命令。

    n:正向查找

    N:反向查找

    情况2:从输入模式到命令模式

    esc

    情况3:从编辑模式到末行模式

    进入末行模式的方式:在编辑模式下按shift+:

    末行模式下的常用操作

    第一类命令:行号

    set nu:显示行号

    set nonu:关闭行号

    第二类命令:跳转

    num:直接跳转到第num行   跳到第三行直接冒号输三回车。

    $:直接跳转到最后一行

    第三类命令:取消匹配到的内容的高亮

    nohl     =  no high light

    第四类命令:替换

    start,end s/原始内容/替换内容/g       : 1,10 s/root/ken/g

    分隔符不一定是/,只要是三个相同的符号即可)      %:代表首行。$:代表最后一行。

                                                            

    注意:

    如果不用g,那么仅仅会替换每行的第一个找到的对象

    如果使用g,那么会将范围内所有找到的对象全部做替换

    例子:将54到56之间的echo替换为bajie

    :54,56 s/echo/bajie/g

    例子:将文件中全部的echo替换为bajie

    :1,$ s/echo/bajie/g     $ 表最后。

    :% s/echo/bajie/g

    例子:将文件的50-100行行首添加一个#

    :50,100 s/^/#/g

    例子:1-5行首添加空格

    :1,5 s/^/ /g

    例子:将全部行首的空格删除

    :1,$ s/^ //g

    例子:将全部行首的#删除

    :1,$ s/^#//g

    例子:将1-5行中的a删除

    :1,5 s/a//g

    例子:在1-5行的末尾添加一个#

    :1,5 s/$/#/g

    例子:将文件中全部的 / 替换为 +

    :% s@/@+@g      间隔三个同种任意符号即可。

    补充1:

    ^:表示行首 ,开头。

    $:表示行尾,结尾。

    第五类命令:保存和退出 (末行模式)

    w:执行保存操作(保存到原始文件中)

    w /path/to/file:实现文件另存为

    wq:保存退出。

    q:退出(没修改内容时)

    !:强制执行操作

    q! :强制退出。

    第六类命令:高级操作

    !命令:在vi中直接执行命令

    r /path/to/file:将file中的内容导入到当前文件中  (r = read)    :r /文件  回车。

    set tabstop=4:将tab缩进的字符数设置为4个

    set ai:设置自动缩进

    set noai:取消自动缩进

    第七类命令:复制、移动、删除多行的操作

    start,end d:删除多行     :1,3 d

    start,end m dest:将多行移动到指定行的下面     :1,3 m 10               :1 m $  第一行移到最后一行。

    start,end co dest:将多个复制到指定行的下面

    例子:将59到198之间的内容复制到233行的下面

    59,198 co 233

    分屏操作

    vim -o file1 file2:实现水平分屏

    vim -O file1 file2: 实现垂直分屏

    ctrl+w:切换到另一个分屏

    打开文件的小技巧

    vim +num file:打开文件的时候,自动跳转到第num行(加号不可省略)

    vim + file:打开文件的时候,自动跳转到最后一行

    vi的配置文件

    vim /etc/vimrc:全局配置文件,在这个文件中做的配置,会对所有用户生效

    ~/.vimrc:(默认不存在,需要自己手动创建)用户配置文件,仅仅对当前用户生效

      ~ 用户家目录。  . 隐藏文件,查看用# ls -la。

           # su :切换用户。

           # chown -R ken: /home/ken       # su -ken  切换属主。

    1. 编辑vi的配置文件,实现可以自动显示行号、缩进4个字符、自动对齐

    # vi ~/.vimrc

    :set nu

    :set ai

    :set tabstop=4

    vi崩溃缓存机制

    用vim编辑一个文件的是,如果文件没有正常的关闭(wq、q、q!),那么就会生成一个崩溃缓存文件

    崩溃缓存文件的和作用

    1. 缓存文件是隐藏文件

    2. 缓存文件基本格式是 .file.swp

    3. 缓存文件的作用是用于在系统意外关机的情况下,恢复文件中的内容(修改了文件内容,意外关掉终端或者系统)

    4. 缓存文件的使用方式

    第一步:# vim -r .file.swp   或者# vim file

    第二步:保存退出                     找到奔溃缓存文件后,q 退出

    第三步:删除缓存文件              # vi -r file   根据提示回车继续,此时文件已恢复,按wq保存退出。

                    # rm -rf  .file.swp  删除奔溃缓存文件。# vim file 文件恢复也无提示。

    注意:

    1. 如果文件发生了修改,那么无法直接退出

    2. 如果要退出一个修改了的文件,有三种方式

    方式1:先执行保存(w),然后执行退出(q)

    方式2:直接保存并退出(wq)

    方式3:不保存,并强制执行退出操作(q!)

    修改vim

    替换,(在末行模式下):% s 把这个/更改为这个/g    回车。   g:表示全局。

    .......懒人回复方式,请不要重复点击,以免页面崩溃......


    作者:WIU1905
    出处:http://www.cnblogs.com/WIU1905/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    eclipse异常关闭,无法启动tomcat解决办法
    VM下,装centos7系统,配置nginx的问题
    用php代码统计数据库中符合条件的行数
    css中的相对定位与绝对定位的区别
    URL地址理解
    开机直接显示用户被锁定点一下就黑屏
    css3 三个属性:-webkit-tap-highlight-color,-webkit-touch-callout,-webkit-user-select
    jquery.flipster.js 3D旋转木马效果
    css3 position:sticky 固定导航平滑过渡
    iframe跨域获取父页面url
  • 原文地址:https://www.cnblogs.com/WIU1905/p/10648661.html
Copyright © 2011-2022 走看看