Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最大的文本编辑器,它的作用是建立、编辑、显示文本文件。

Vim没有菜单,只有命令。

命令 作用
     a 在光标所在字符后插入
     A 在光标所在行尾插入
  i 在光标所在字符前插入
  I 在光标所在行行首插入
  o 在光标下插入新行
  O 在光标上插入新行
      命令                               作用
 :set nu   设置行号
   :set nonu   取消行号
    gg   到第一行 
    G   到最后一行
    nG   到第n行
    :n   到第n行
    $   移至行尾    
    0   移至行首
    命令                作用
  x 删除光标所在处字符
  nx 删除光标所在后n个字符
  dd 删除光标所在行,ndd删除n行
  dG 删除光标所在行到文件行尾内容
  D 删除光标所在处到行尾内容
  :n1,n2d 删除指定范围的行
   命令                     作用
  yy  复制当前行
  nyy 复制当前行以下n行
  dd 剪切当前行
  ndd 剪切当前行以下n行
  p、P 粘贴在当前光标所在行下或行上
  命令                                    作用
  r 取代光标所在处字符
  R 从光标所在处开始替换字符,按Esc结束
  u 取消上一步操作
      命令                                          作用
  :w 保存修改
  :w  filename 另存为指定文件
  :wq 保存修改并退出
  ZZ 快捷键,保存修改并退出
  :q! 不保存修改退出
  :wq! 保存修改并退出(文件所有者及root可使用)

1.文本编译器  ASCII文件
    vi的模式
         编辑模式:键盘操作被解析为编辑命令
          插入模式:文字输入
          末行模式:vi的内置的命令接口,执行vi内置命令

2.编辑模式--》插入模式
    i:在当前光标的所在处插入、
    I:在当前光标的所在行首插入
    a:在当前光标所在处的后面插入
    A:在当前光标所在行的行尾插入
    o:在光标所在行(新增)的下一行插入
    O:在当前光标所在行(新增)的上一行插入

插入模式--》编辑模式
    按[ESC]

编辑模式--》末行模式
       :

末行模式--》编辑模式
   ESC  ESC

:q!  不保存退出
 :wq   保存退出
 :x   保存并退出
 编辑模式   ZZ 保存退出

3.打开:可以一次打开多个文件
       vi 文件名1  文件名2
       在末行模式下输入next切换到下一个文件,输入prev切换到上一个文件,输入first切换到第一个文件,输入last切换;到最后一个文件
    分割窗口打开多个文件
           -O:水平分割
        Ctrl+w,上下箭头
       -o:垂直分割
        Ctrl+w,左右箭头

vi +num 文件名   光标在第num行
vi + 文件名    光标在末尾行

4.编辑操作(编辑模式下)

.光标移动
    单字符移动
        H左  L右  J下  K上
        可以和数字组合进行多个移动
    单词间移动
        w:跳至下一个单词的词

        b:当前或前一个词首
        e:当前或下一个词尾
    行内移动
        0:绝对行首
        ^:第一个非空白字符
        $:绝对行尾
    句间移动
        (
        )
    段间移动
        {
        }
    行间移动
         num+g
        G:最后一行
        1G:第一行

x:删除光标所在处的字符
    num+x:删除光标所在处开始向后的num个字符
    dd:删除光标所在处的一行
        num+dd:删除光标所在处向后的num行

r:替换光标所在处的字符

yw:复制光标所在处到行尾的字符
    num+yw:复制num个字
    yy:复制光标所在行
    num+yy:复制num行
    p:粘贴

5.末行模式:范围定界
      设置行号:set nu
      取消行号:set nonu
      跳转至某一行:num
      查找:/查找单词
             ?查找字符
      替换字符
           s/a/b 将光标所在行的第一个a替换成b
           s/a/b/g 将光标所在行的所有a替换成b

start,end:例:1,10
    .:表示当前行
    $:最后一行
    
        c:替换

1)导入命令执行结果:r!命令

2)定义快捷键:map  快捷键  触发命令

例:map  ^P   I#<ESC>

map  ^B   0x

3)连续行注释  :n1,n2s/^/#/g

:n1,n2s/^/#//g

:n1,n2s/^/\/\//g

4)替换

:ab   mymail     123456@qq.com

文本编辑器vim的更多相关文章

  1. Linux系列教程(十)——Linux文本编辑器vim

    通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下: ①.Linux文件和目录处理命令 ②.Linux链接命令和权限管理命令 ③.Linux文件搜索命令 ④.Lin ...

  2. Linux常用命令——文本编辑器Vim

    Linux常用命令--文本编辑器Vim Linux  Vim常用操作 插入命令 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行首插入 o 在光标下插入新行 ...

  3. Linux文本编辑器vim

    目录 1.vim 的工作模式 2.插入命令 3.定位命令 4.删除命令 5.复制和剪切命令 6.替换和取消命令 7.搜索和搜索替换命令 8.保存和退出命令 9.vim 高级操作 10.总结 通过前面几 ...

  4. LINUX文件内容处理及文本编辑器vim

    Linux基本操作命令 echo命令 echo命令: 把echo后面的内容显示到屏幕. -n 显示内容的时候不显示每行结尾的回车 echo 内容 >> 文件名 表示把内容加到一个文件的末尾 ...

  5. 文本编辑器vim和gedit

    vim和gedit都是文本编辑器 vim用法: vim 文件名 #打开文件 输入 i,进入文本编辑模式,编辑完再按ESC,退出编辑模式,再输:wq,保存退出:如果输:q!则是不保存退出,很简单.. 如 ...

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

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

  7. Linux 文本编辑器 vim

    第五讲 文本编辑器 vim

  8. Linux文本文件——文本编辑器Vim

    Linux文本文件——文本编辑器Vim 摘要:本文主要学习在Linux系统中使用Vim文本编辑器编辑文本. 什么是Vim Vim是一个基于文本界面的编辑工具,使用简单且功能强大.更重要的是,Vim是所 ...

  9. 第4章 文本编辑器vim

    1. vim常用操作 1.1 vim简介 (1)vim是一个功能强大的全屏幕文本编辑器,是Linux/Unix上最常用的文本编辑器,它的作用是建立.编辑.显示文本文件. (2)vim没有菜单,只有命令 ...

  10. 文本编辑器VIM/VI

    vim/vi  功能强大全屏文本编辑器.主要是建立,编辑,显示文本. www.vim.org  构建shell脚本 :set number 使文件出现行号 a 光标后附件文件     i在光标前插入文 ...

随机推荐

  1. ajax接触

    1. function doSave() { ajax_get("${contextPath}/auth/functionsave", $("#editForm" ...

  2. Java 集合系列 14 hashCode

    java 集合系列目录: Java 集合系列 01 总体框架 Java 集合系列 02 Collection架构 Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例 Java ...

  3. Hadoop常见错误及处理方法

    1.Hadoop-root-datanode-master.log 中有如下错误: ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: jav ...

  4. java作业——整数相加

    设计思路:由于命令行参数都是字符串,所以解决问题的关键在于字符串和整数之间的转化.首先定义数组,让所要相加的数组成一个数组,然后实现数组的字符串转化为整数,最后相加输出就行了. 程序流程图: 源代码: ...

  5. 个人收集的一些网页上一键云DDOS攻击的网站、IP地址测试,服务器压力测试

    http://bbs.itzmx.com/thread-9018-1-1.html #1 - Network Stresser - http://networkstresser.com#2 - Lif ...

  6. eclipse-mysql-tomcat搭建jspk开发环境

    ...本来不想写,刚刚给女朋友又安了一次发现几乎忘了,还是记一下吧.. 1.默认安装好jdk以及eclipse或相关ide. 2.检查jdk环境变量是否配置成功:cmd下输入 java -versio ...

  7. RHEL 5 安装phpqrcode生成二维码

    VMWARE中全新安装(默认)RHEL. 之后,yum 安装备apache/php 下载并上传phpqrcode 1.1.4版本,并将其解压至/var/www/html/phpqrcode (去掉ip ...

  8. 一模 (2) day2

    第一题: 题目大意:给出n种物品和每种物品的件数,求拿k件的方案数.N<=30 解题过程: 1.一开始总想着是组合数学的模型,结果怎么都想不出来..然后写了个爆搜,数据很弱,只有1个点超时. 2 ...

  9. Drag+Drop和MouseClick

    项目中的一个树形结节,既要响应拖拽事件.又要响应点击事件.实现的时候没多想,依次实现了tree_MouseClick.tree_MouseDown.tree_MouseMove事件.出现的Bug是,偶 ...

  10. CodeForces 546B-Soldier and Badges

    题意: 给出一些数字,要求每个数字都不一样需要增加几 思路: 先排序,然后一个个增加,最后求总和差 代码如下: #include <iostream> #include <cstdi ...