一、VI / VIM概述

  [更新]:VIM资料参见:http://www.runoob.com/linux/linux-vim.html

  是什么?

    是一个文本编辑器。

    Vim是从 vi 发展出来的一个文本编辑器.

  VIM有哪些提升?

   现在很多发行版本直接把VI做成了VIM的软链接

  如果使用VI打开文件,发现右下角有光标所在行列,则说明此时的VI就是VIM!(当然,也可以通过alias进行查看)

二、基本使用

  1.操作模式

    基本上 vi/vim 共分为三种模式,分别是

      命令模式(Command mode),——鸟哥将其定义为 一般模式

      插入模式(Insert mode)——鸟哥将其定义为编辑模式

      底线命令模式(Last line mode)。 ——鸟哥将其定义为命令行命令模式

    先看一个实例:

    //直接使用(vim abc),若存在abc文件,则直接打开,若不存在,则创建一个

  这里之前没有创建过此文件,所以执行后是一个新文件:

  //默认是命令模式

  先介绍几个简单的命令,按一下 i ,进入编辑模式

  输入一些测试字符(此处发现小键盘无法正常输入数字)

  编辑完成后如何保存退出呢

    按一下 esc,到底行模式,再按:wq ,保存并退出:

  可以看到,文件正确编辑了:

  三个模式的关系如下:

  

  接下来介绍一下几个命令模式

  2.命令模式

  用户刚刚启动 vi/vim,便进入了命令模式。

  此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

  以下是常用的几个命令:

      • i 切换到插入模式,以输入字符。
      • x 删除当前光标所在处的字符。
      • : 切换到底线命令模式,以在最底一行输入命令。

  若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

  命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

  几个实例:

  

  //打开文件(如不存在则创建新文件),经测试 centOS7此命令会到上次编辑处,各发行版略有差异

  

  //打开文件并定位到最后一行

  

  //打开文件并定位后第三行(切换数字定位任意行)

  

  //行数超过最大行,直接定位到最后一行

  

  //定位到第一次出现 hello 的位置,按 n ,切换下一个

  

  //同时打开或者创建多个文件,第一次在第一个文件,在底行模式输入 :n,切换到下一个文件

  若已到最后一个文件,无法前进,按 :N(或者 :prev)回到上一个文件

  3.输入模式

  在命令模式下按下i就进入了输入模式。

  在输入模式中,可以使用以下按键:

      • 字符按键以及Shift组合,输入字符
      • ENTER,回车键,换行
      • BACK SPACE,退格键,删除光标前一个字符
      • DEL,删除键,删除光标后一个字符
      • 方向键,在文本中移动光标
      • HOME/END,移动光标到行首/行尾
      • Page Up/Page Down,上/下翻页
      • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
      • ESC,退出输入模式,切换到命令模式

  4.底行模式

  在命令模式下按下:(英文冒号)就进入了底线命令模式。

  底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

  在底线命令模式中,基本的命令有(已经省略了冒号):

      • q 退出程序
      • w 保存文件

  按ESC键可随时退出底线命令模式。

三、常用指令

  更多指令介绍,参考菜鸟教程http://www.runoob.com/linux/linux-vim.html

  常用指令分类介绍,参考https://www.cnblogs.com/meet/p/4797069.html

  一般模式常用指令:

    G——跳到指定行,numG(例如10G跳到第10行,1G或者gg跳到首行),直接输入G跳到文件最后一行

    0/$——跳到行首或行尾

    yy/nyy——yy复制当前行,nyy复制光标所在行向下n行(例如10yy)

    p/P——在当前行下一行粘贴(p),上一行使用(P)

    dd——删除/剪切光标所在行

    /string——向后(向前使用?string)搜索string(例如/abc,搜索abc),使用n向下继续搜索,N向上继续搜索

      消除搜索过的高亮字符——:noh

    u——撤销

    .——重复前一次操作(小数点)

    ctrl+f/ctrl+b——前翻页/后翻页(下一页/上一页)

    :n1,n2s/old/new/g——替换(使用%不使用n1 n2则为全局替换),若要使用者确认,加上c参数

    :r filename——读取另外一个文件进入当前文件

  进入编辑模式常用指令:

    i——在光标处插入

    o/O——在光标下一行输入新的一行(o),在上一行使用O

  底线命令模式:

    :wq——储存后离开

    :set nu——显示行号

    :n——到第n行,例如:10到第10行

    :bn—下一个文件(VIM多文件操作)
    :bp—上一个文件

  最后,命令是一言难尽的,这里附上VIM键盘图

四、其他功能

  1.救援模式

    参考http://m.blog.csdn.net/weixin_36210698/article/details/72892553

  2.多文件编辑

    vim file1 file2直接打开多个文件

vim .txt .txt

    通过:files查看打开的文件列表

    

    使用:n进入下一个文件(:N进入上一个文件)

  3.多窗口展示  、

  在命令行界面输入“:sp {filename}”即可!那个 filename 可有可无, 如果想要在新窗口启动另一个文件,就加入文件名,否则仅输入 :sp 时, 出现的则是同一个文件在两个窗口间!

  

  相关操作:

    ctrl+w+↑/↓——窗口切换(按键的按法是:先按下 [ctrl] 不放, 再按下 w 后放开所有的按键,然后再按下 j (或向下方向键),则光标可移动到下方的窗口。

    ctrl+w+q——离开(或者切换到下面的窗口使用:q离开)

    4.vim环境参数配置

      也就是之前的设置环境参数的:set nu不用每次都写,可以通过配置文件进行配置使用时

      完整环境参数参见http://blog.csdn.net/u011192409/article/details/49208605

      整体 vim 的设置值一般是放置在 /etc/vimrc 这个文件,不过,不建议你修改他! 你可以修改 ~/.vimrc 这个文件 (默认不存在,请你自行手动创建!),将你所希望的设置值写入! 举例来说,可以是这样的一个文件:

"这个文件的双引号 (") 是注解
set hlsearch "高亮度反白
set backspace= "可随时用倒退键删除
set autoindent "自动缩排
set ruler "可显示最后一列的状态
set showmode "左下角那一列的状态
set nu "可以在每一列的最前面显示行号啦!
set bg=dark "显示不同的底色色调
syntax on "进行语法检验,颜色显示。

    5.中文乱码问题

    参考https://jingyan.baidu.com/article/ab69b270de8b4f2ca7189f1d.html

    6.断行符转换

    参考:https://www.cnblogs.com/kerrycode/archive/2015/12/26/5077969.html

Linux入门进阶第一天——vim文本编辑器的更多相关文章

  1. Linux命令行下的vim文本编辑器

    Linux命令行下的vim文本编辑器 下面这个网站的地址讲解的非成分清楚!!!! http://blog.csdn.net/niushuai666/article/details/7275406 学习 ...

  2. Linux系统 vi/vim文本编辑器

    Linux系统 vi/vim文本编辑器 (一)Vim/Vi简介 (二)Vim/Vi工作模式 (三)Vim/Vi基本使用 (四)Vim/Vi应用技巧 (一)Vim/Vi简介 Vim/Vi是一个功能强大的 ...

  3. linux/linux学习笔记-vim文本编辑器(mooc)

    vim文本编辑器 vim与vi的区别:( vim=vi +IMproved) VIM是一个Unix以及类unix文本编辑器 特点:功能强大,高度可定制 vim编辑器的三种模式:一般模式.编辑模式和命令 ...

  4. Linux基础学习(5)--文本编辑器Vim

    第五章——文本编辑器Vim 一. Vim常用操作 1.Vim简介:              Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立.编辑. ...

  5. Linux学习笔记(九)Vim文本编辑器的使用

    Vim文本编辑器的使用 Vim的工作模式 1.命令模式 2.输入模式 3.编辑模式 进入Vim 1.使用Vim打开文件 2.直接进入指定位置 Vim基本命令 1.插入命令 2.光标移动命令 3.使用V ...

  6. Vim 文本编辑器的基本使用

    Vim文本编辑器是Linux/Unix系统下最常用的工具之一,通过该工具可以很方便的建立.修改.编辑文档或者程序文件,其作用类似与windows系统下的记事本或者notepad++,因此熟练掌握该工具 ...

  7. 11 vim文本编辑器

    和sed相比,sed为字处理器(行编辑器),将文本逐行放入到模式空间(也就是内存)中进行处理,并显示在屏幕上.而vim.vi以及nano都是全屏文本编辑器,而vim则是vi的加强版本,相对于vi,vi ...

  8. deepin linux 学习笔记(二)——文本编辑器

    目录 deepin linux 学习笔记(二)--文本编辑器 前言 nano 小巧的命令行编辑器 通用 编辑 定位 排版 配置 vim 思路独特的超级编辑器 命令模式 插入模式 底线模式(末行模式) ...

  9. (6.2)vim文本编辑器

    vi / vim是Unix / Linux上最常用的文本编辑器而且功能非常强大. vim文本编辑器只有命令,没有菜单.

随机推荐

  1. Excel英语成绩单

  2. procedure of intall and setup centos 6.5

    select webserver install option,and select ,uncheck the postgresql option selected some “… platform” ...

  3. Django F对象的使用

    概念 class FF()是代表模型字段的值,也就是说对于一些特殊的字段的操作,我们不需要用Python把数据先取到内存中,然后操作,在存储到db中了. 场景 例1:我们有个统计点击量的字段,每次更新 ...

  4. VirtualBox操作总结

    1. VirtualBox安装 下载rpm,rpm -ivh 安装 2. 在图形界面打开virtual box virtualbox 3. vboxmanage打开虚拟机 vboxmanage sta ...

  5. pdo_mysql扩展以及测试

    1.进入 PHP 的软件包 pdo 扩展目录中(注:php的tar包解压目录) 2.配置和编译文件 进入 在PHP源码包中进入 cd /data/php-5.6.36/ext/pdo_mysql 执行 ...

  6. 启动 NFS 守护进程:rpc.nfsd: writing fd to kernel failed: errno 111 (Connection refused)

    启动 NFS 守护进程:rpc.nfsd: writing fd to kernel failed: errno 111 (Connection refused) rpc.nfsd: unable t ...

  7. HDU 1711 Number Sequence (KMP简单题)

    Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  8. Mac下python3配置Sklearn

    服务器要有Python 环境 ,也要有Python运行的依赖包,Java与Python使用Process进程进行通讯. 安装homebrew /usr/bin/ruby -e "$(curl ...

  9. flink统计根据账号每30秒 金额的平均值

    package com.zetyun.streaming.flink; import org.apache.flink.api.common.functions.MapFunction;import ...

  10. JavaScript this用法

    当this为全局变量时,this为window对象 <script> // 在全局变量中,this为window window.onload= function(){ alert(wind ...