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. JS中使用正则表达式

  2. JS 页面刷新或重载

    一.先来看一个简单的例子:下面以三个页面分别命名为frame.html.top.html.bottom.html为例来具体说明如何做.frame.html 由上(top.html)下(bottom.h ...

  3. 【原创】0. MYSQL++的环境准备

    1. 获取 Google MYSQL++,第一个就是,然后跟着要求进行下载. 2. 编译和安装 其实在作者的各种README文档里面已经写得很清楚了,现在对一些可能会出现问题的地方进行一下回顾. Wi ...

  4. 如何在局域网架设FTP(特别简单方便)

    https://files.cnblogs.com/files/wlphp/FTPserver.zip 在我上传的博客园文件下载下来 启动服务,设置账号密码(注意一定要关闭防火墙)

  5. mysql 纸 mysql_fetch_array OR mysql_fetch_assoc OR mysql_fetch_row

    <?php $con = mysql_connect("localhost", "root", "123456");if (!$con ...

  6. string基本字符系列容器(一)

    C++STL提供了string基本字符系列容器来处理字符串,可以把string理解成字符串类,它提供了添加,删除,替换,查找和比较等丰富的方法. 使用string容器,需要头文件包含声明#includ ...

  7. IDEA maven打包时跳过测试

    配置这个install -Dmaven.test.skip=true, 可以跳过business项目本地启动自动跑测试用例

  8. 61-结点选择(树形dp)

     http://lx.lanqiao.cn/problem.page?gpid=T14 算法训练 结点选择   时间限制:1.0s   内存限制:256.0MB        问题描述 有一棵 n 个 ...

  9. 虚拟机Ubuntu16.04安装lrzsz

    [系统环境] 宿主机:Win7 64位 虚拟机软件:Vmware workstation 12 虚拟机:Ubuntu 16.0.4 [目的] 配合Secure CRT使用rz,sz,方便在Ubuntu ...

  10. asp.net服务器推送长连接

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx. ...