Linux 中 Vi 编辑器的简单操作

  Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式。3种模式彼此需要切换。

  一、进入 Vi 编辑器的的命令

    vi  filename  //打开或新建文件,并将光标置于第一行首

    vi  +n  filename  //打开文件,并将光标置于第n行首

    vi  +  filename  //打开文件,并将光标置于最后一行首

    vi  +/pattern  filename  //打开文件,并将光标置于第一个与 pattern 匹配处

    vi  -r  filename  //在上次使用 vi 编辑时发生系统崩溃,恢复 filename

  二、Vi 3种模式的切换

    一)、从命令模式到编辑模式

      在命令模式下按以下命令将进入到编辑模式

      1、a  在光标后进入编辑模式

      2、i  在光标前进入编辑模式

      3、A  在当前行尾进入编辑模式

      4、I  在当前行首进入编辑模式

      5、o  在当前行之下新开一行

      6、O  在当前行之上新开一行

      7、s  删除光标所对应的字符,进入编辑模式

      8、ns  //删除 n 个字符后进入编辑模式

      9、S  删除光标所在的行,然后进入编辑模式

      10、nS  //删除 n 行后,进入编辑模式

  三、命令模式下的操作

    一)、光标的移动

      1、j  光标向下移动一行

      2、k  光标向上移动一行

      3、h  光标向左移动一个字符

      4、l  光标向右移动一个字符

      5、ctrl + b  //光标向上移动一屏,向后翻页

      6、ctrl + f  //光标向下移动一屏,向前翻页

      7、$  //光标移动至行尾

      8、0(数字)  //光标移动至行首

      9、gg  //光标移动至文档开始处

      10、G  //光标移动至文档尾部

      11、nG  //光标移动到第 n 行

      12、w  //移动到下个单词的首字母

      13、b  //移动到本单词或者上个单词的首字母

      14、e  //移动到本单词或者下个单词的尾字母

      15、{  //光标移动到段落首部

      16、}  //光标移动到段落尾部

      17、L  //光标移动到当前屏幕尾部(不会走到下一屏)

      18、H  //光标移动到当前屏幕首部

      19、M  //光标移动至当前屏幕中间行

      20、space  //光标向前移动一个字符

      21、Backspace  //光标向后移动一个字符

      22、n+  //光标下移 n 行

      23、n-  //光标上移 n 行

      24、n$  //光标移动至第 n 行尾

    二)、文本内容的删除

      1、x  //删除光标所在位置的一个字符

      2、nx  //删除光标所在位置起 n个字符

      3、dx  //从当前字符删除到下个单词前,包括空格

      4、ndx  //从当前字符(单词)起,删除n个单词,包括最后一个空格后面的空格

      5、dd  //删除当前行

      6、ndd  //删除当前行起向下 n 行

      7、J  //删除光标所在行与下一行之间的空格,把光标行和下一行接在一起

      通用删除:d+光标移动距离

      8、d$  //删除光标到行尾的内容

      9、d0  //删除光标到行首的内容

      10、d}  //删除从光标到段落尾部的内容

      11、d{  //删除从光标到段落首部的内容

      12、dL  //删除当前行至屏幕尾部的内容

      13、dH  //删除当前行至屏幕首部的内容

      14、dG  //删除当前行至文档尾部的内容

      15、d1G  //删除当前行至文档首部的内容

      16、dnG  //删除当前行至文档的第 n 行

    三)、文本内容的复制与粘帖

      1、yy  复制当前行

      2、nyy  复制从当前行开始向下的n行

      3、y+光标移动的距离,可以进行灵活复制 (可以参考删除命令)

      3、p  在光标之后粘贴(光标当前行的下一行进行粘贴)

      4、P(大写)  在光标之前粘贴    

    三)、其他命令模式下的操作

      1、u  //撤销修改或删除操作

      2、r+字符  //对光标当前单个字符进行替换

      3、R  //替换当前字符及其后的字符,直至按 ESC 键

      3、.  //重复执行上个命令

    

  四、尾行模式下的操作

    一)、文件的保存与退出

      1、:w  //保存

      2、:w  filename  //另存为到 filename 文件

      3、:wq  //保存退出

      4、:q  //退出

      5、:wq!  //强制保存退出

      6、:q!  //不保存强制退出

      7、:x  //保存并退出 ,应该和 wq! 功能一样

    二)、查找与替换

      1)、/search  正向查找字符串 search,按 n 键查找下一个,按 N 键查找上一个

      2)、?search  反向查找字符串 search

      3)、s /search/replace  替换当前行首次出现的 search

      4)、s /search/replace/g  把当前光标所在行中的 search 替换成 replace,并把文档中其余的 search 高亮显示

      5)、%s /search/replace  把文档中所有的 search 替换成 replace

      6)、m,n s /search/replace/g  把文档中从第m行到第n行中的 search 替换成 replace ,将把文档中其余的 search 高亮显示

    三)、尾行模式下的文本编辑(复制,删除)

      1)、n1,n2 co n3  //将 n1 行到 n2 行的内容复制到 n3 行下

      2)、n1,n2 m n3  //将 n1 行到 n2 行的内容移动至 n3 行下

      3)、n1,n2 d  //将 n1 行到 n2 行之间的内容删除

    :set nu/number  //给文件每行内容设置编号

    :set  nonu/nonumber  //取消设置编号

     :n  光标跳转到第 n 行位置

  五、编辑模式下的操作

    1、ctrl+u  //删除编辑模式下输入的文本内容

    

Linux 中 Vi 编辑器的简单操作的更多相关文章

  1. Linux中vi编辑器的使用详解

    vi编辑器是Linux系统下标准的编辑器.而且不逊色于其他任何最新的编辑器.可是会用的有多少呢.下面介绍一下vi编辑器的简单用法和部分命令.让你在Linux系统中畅行无阻. 基本上vi可以分为三种状态 ...

  2. linux中vi编辑器的使用

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本 编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任 何版本,vi编辑器是完 ...

  3. linux中vi编辑器

    vi编辑器,通常称之为vi,是一种广泛存在于各种UNIX和Linux系 统中的文本编辑程序.它的功能十分强大,但是命令繁多,不容易掌握,它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且用户 ...

  4. linux中vi编辑器(转载)

    三种模式相互切换 在命令终端输入vi进入vi编辑器. 命令模式:进入编辑器即进入命令模式, 输入模式:在命令模式下输入“i ”进入输入模式: 末行模式:按“:”进入末行模式: 在输入模式切换至末行模式 ...

  5. Linux中vi编辑器的用法

    实验一: vi编辑器的模式切换 1.       实验目标:熟练掌握vi编辑器的三种模式间切换及其特点 2.       实验操作步骤: 步骤一: 进入vi编辑器即命令模式 进入vi编辑器可以在命令终 ...

  6. linux中VI编辑器使用个人记录

    VI编辑器有三种编辑模式:命令模式.最后行模式.文本编辑模式 启动VI后进入的第一种模式是”命令模式“.从命令模式可进入最后行模式和编辑模式.而后两种模式之间不能直接切换.必须按ESC键退回到命令模式 ...

  7. linux中vi编辑器没有颜色

    vi是没有颜色的,vim是有颜色的.可是系统中没有安装vim. 我们可以通过 rpm -qa |grep vim 看看系统中是否安装了下面3个rpm包,如果有就是安装了vim. 点击(此处)折叠或打开 ...

  8. linux中Vi编辑器使用

    1.如需要编辑aaa.txt文件: vi  aaa.txt   就可以进入到   aaa.txt文件中, 输入  i   进入到编辑模式, 按 Esc 退出编辑模式  , :wq   保存退出编辑模式 ...

  9. Linux下vi编辑器粘贴复制剪切功能

    RedHat 9.0 Linux下vi编辑器实现简单的粘贴复制剪切功能": 如果想把文件内的第三行内容黏贴到第十五行: 1.进入你的文件,(处于命令模式,而不是编辑模式) 2.将你的光标移到 ...

随机推荐

  1. VBA中如何动态定义数组

    利用 dim Arr()as string这样声明,一旦赋值后,数组大小也就固定了.如果要改变数组大小,要用redim 命令redim arr(10) 加preserve 可以不清空数组,保持原有数据 ...

  2. CentOS 7部署OpenStack(二)—安装keystone服务

    1.创建数据库 [root@controller ~]# mysql -u root -p [root@controller ~]# CREATE DATABASE keystone; [root@c ...

  3. 史上最强大的40多个纯CSS绘制的图形

    Square(正方形) #square { width: 100px; height: 100px; background: red; } Rectangle(矩形) #rectangle { wid ...

  4. 使用FIO对SATA、SSD和PCIe Flash进行测试

    首先声明,同事做的实验 使用fio对SATA.SSD.PCIE进行了测试 测试说明: 1.测试命名   sync_write_4k_32      sync表示测试方式,可以是sync或者libaio ...

  5. 金山云—ubuntu-web服务器完整部署笔记

    金山云-ubuntu-web (jdk环境配置+tomcat配置+nginx反向代理)服务器完整部署文档第一步:挂载数据盘 参考金山云帮助文档 http://www.ksyun.com/doc/art ...

  6. RDD:基于内存的集群计算容错抽象(转)

    原文:http://shiyanjun.cn/archives/744.html 该论文来自Berkeley实验室,英文标题为:Resilient Distributed Datasets: A Fa ...

  7. Windows性能优化关键点-Windows Performance tuning important settings

    最近重装了windows8系统,发现性能差得很,远不如官方说的比win7好很多的说法.经过几个关键配置的调整,终于找回电脑原来的风采. 下面总结一下,希望对大家有帮助: 1. 检查windows服务, ...

  8. java8中map的meger方法的使用

    java8中map有一个merge方法使用示例: /** * 打印出包含号码集的label的集合 * * @param args */ public static void main(String[] ...

  9. zookeeper集群管理配置优化总结

    1:默认jvm没有配置Xmx.Xms等信息,可以在conf目录下创建java.env文件 export JVMFLAGS="-Xms512m -Xmx512m $JVMFLAGS" ...

  10. kendoWindow 与 bootbox 冲突,显示层次问题

    今天在使用bootbox做弹出提示遇到些麻烦,由于使用kendoWindow先弹出数据输入窗口, 然后在检核输入时,又用bootbox做为提示窗口,这下悲剧了,后弹出的bootbox窗口总是在kend ...