vi的三种模式:命令模式、编辑模式、尾行模式

一.命令模式

  1.光标移动

    a、字符级

      左(h)  下(j)  上(k)  右(l)

    b、单词级

      w word移动到下个单词首字母

      b before上个单词首字母

      e end下个单词结尾

    c、行级

      0 行首

      $ 行尾

    d、段落级{ 上  } 下(没必要记忆)

    e、屏幕级 H屏首  L屏尾(没必要记忆)

    f、文档级

      G 文档尾部

      nG 文档第n行

      gg 文档第一行

      crtl+f  <--> pagedown向下翻页

      crtl+b <--> pageup向上翻页

      n+enter      向下移动n行

  2.内容删除

    dd  //删除当前行

    ndd  //自当前行向下删除n行

    x  //删除当前字符

    cw  //删除光标所在字母后面的字符

  3.内容复制

    yy  //复制光标当前行

    nyy  //自当前行复制n行

    p  //对(删除)复制的内容进行粘贴

  4.相关快捷操作

    u  //撤销

    .  //重复上次操作

二.编辑模式  (编辑模式下可以输入任意内容)

  a 光标向后移动一位

  i  当前位置

  o 另起新行

  s 删除光标所在字符

  r 替换光标所在字符

三.尾行模式  (用于保存内容、查找替换、设置行号等功能性操作)

  :q    //quit退出vi编辑器

  :w   //write保存修改的内容

  :wq  //保存并退出

  :q!  //强制退出,当对文本内容作了修改而不想要保存时

  :w!  //强制保存,当没有文本的写权限时

  :set number  或  :set nu  //显示行号

  :set nonumber  或  :set nonu  //取消显示行号

  :/内容/  或  /内容  //查找指定内容  //n将光标移动到下一个目标  //N上一个

  :n  //跳转到第n行

  :s/targetContent/newContent  //替换当前行第一个targetContent为newContent

  :s/targetContent/newContent/g  //整行相应内容替换

  :%s/targetContent/newContent  <==> :1,$s/word1/word2/g //整个文本相应内容替换

  :n1,n2s/word1/word2/gc      //:100,200s/word1/word2/g   把100行到200行之间的word1替换为word2,并提示是否替换  c->confirm

Linux之vi三种模式常用操作的更多相关文章

  1. vi/vim 三种模式的操作

    来源:http://www.runoob.com/linux/linux-vim.html ps:刚刚进入vi/vim 是命令模式 一.命令模式 i 切换到输入模式,以输入字符. x 删除当前光标所在 ...

  2. vi三种模式的切换

    基础上vi/vim共分为三种模式,分别是命令模式,输入模式和底线命令模式. 一.命令模式 用户刚刚启动vi/vim,便进入了命令模式. 在此状态下敲击键盘动作会被vim识别为命令,而非输入字符.比如我 ...

  3. 转载:Linux的vim三种模式

    一般模式:在Linux终端中输入“vim 文件名”就进入了一般模式,但不能输入文字. 编辑模式:在一般模式下按i就会进入编辑模式,此时就可以写程式,按Esc可回到一般模式. 命令模式:在一般模式下按: ...

  4. Linux的vim三种模式及命令

    一般模式:在Linux终端中输入"vim 文件名"就进入了一般模式,但不能输入文字.编辑模式:在一般模式下按i就会进入编辑模式,此时就可以写程式,按Esc可回到一般模式. 命令模式 ...

  5. Vi三种模式详解

    命令行模式 (command mode/一般模式) 任何时候,不管用户处于何种模式,只要按一下“ESC”键,即可使Vi进入命令行模式:我们在shell环境(提示符为$)下输入启动Vi命令,进入编辑器时 ...

  6. linux中vim编辑器三种模式及常用命令的使用

    Linux命令经常使用才会烂熟于心 命令行模式: 移动光标: 向下左右箭头可以移动光标: 将光标移动到行尾:$; 将光标移动到行头:^: 将光标移动到页尾:shift+g; 将光标移动到页头:1+sh ...

  7. VIM 三种模式和常用命令

    引言 大数据开发工作中,周围的同事不是用 VIM 就是 Emacs,你要是用 UltraEdit 或 notepad++ 都不好意思跟人家打招呼...什么插件呀.语法高亮呀.拼写检查呀,能给它开的都给 ...

  8. vim(vi)下的三种模式及其相关命令

    vim(vi)下的三种模式1.命令行模式 2.末行模式 3.插入模式 三种模式的联系及其相互转换 在我们输入vi命令进入编写程序的页面后,我们看到的是命令行模式,在我们输入“a”.“i”.“o”.“O ...

  9. Linux初学之vmware Workstation 网络连接三种模式

    简介: VM(VMware Workstation简称VM,后面都将用VM代替阐述)是一款功能强大的虚拟化软件.VM支持在 单一的桌面上同时运行多款不同的操作系统,能够模拟完整的网络环境,支持pxe功 ...

随机推荐

  1. Express+MySQL

    初识NodeJS服务端开发(Express+MySQL) http://www.tuicool.com/articles/JfqYN3I 浅析node连接数据库(express+mysql) http ...

  2. char(10)、varchar(10)、nchar(10)、nvarchar(10)的区别

    CHAR CHAR是定长的,当输入的字符小于10时,会在后面补空值,如果长度大于10,则会截取超出的字符 CHAR字段上的索引效率级高 VARCHAR 存储边长数据,但存储效率没有CHAR高 从空间上 ...

  3. php opcode

    opcode是计算机指令中的一部分,用于指定要执行的操作, 指令的格式和规范由处理器的指令规范指定. 除了指令本身以外通常还有指令所需要的操作数,可能有的指令不需要显式的操作数. 这些操作数可能是寄存 ...

  4. IP定位,天气接口

    首先获取IP ////获得本地真实IP function get_onlineip() { $ip_json = @file_get_contents("http://ip.taobao.c ...

  5. c++原型模式(Prototype)

    原型模式是通过已经存在的对象的接口快速方便的创建新的对象. #include <iostream> #include <string> using namespace std; ...

  6. ubuntu 安装两个版本的Anaconda

    1.下载anaconda2/anaconda3,下载地址:https://www.anaconda.com/download/#linux,anaconda官网如下所示,选择对应版本下载. 2.使用如 ...

  7. Python pandas DataFrame操作

    1. 从字典创建Dataframe >>> import pandas as pd >>> dict1 = {'col1':[1,2,5,7],'col2':['a ...

  8. 基于任务的异步编程模式,Task-based Asynchronous Pattern

    术语: APM           异步编程模型,Asynchronous Programming Model,其中异步操作由一对 Begin/End 方法(如 FileStream.BeginRea ...

  9. 如何在sqlserver 的函数或存储过程中抛出异常。

    raiserror 的作用: raiserror 是用于抛出一个错误.[ 以下资料来源于sql server 2005的帮助 ] 其语法如下: RAISERROR ( { msg_id | msg_s ...

  10. 解决iReport打不开的一种方法

    解决iReport打不开的一种方法 iReport版本:iReport-5.6.0-windows-installer.exe 系统:Win7 64位 JDK:1.7 在公司电脑安装没问题,能打开,但 ...