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. 修改BIND9实现TCP DNS

    近日适逢某平方节日,Google国外网站陆续出现被墙的状况,想必大家都是知道的. 其实本人一直在使用SSH的Socket代理功能爬梯子,效果还是不错的,加上学校有原生IPv6支持,就算不走代理一般也能 ...

  3. IOS 解析crashlog

    1.需要log.crash. dSYM和xcode自带的symbolicatecrash 放到一个文件夹下面 2.终端cd 到文件夹下面 运行命令 export DEVELOPER_DIR=/Appl ...

  4. Android基础开发文档汇总

    一.Android 基本组件 1. Android中PackageManager使用示例 :  http://blog.csdn.net/qinjuning/article/details/68678 ...

  5. 关于 C# 调用 JavaWebservice服务,版本不一致的问题

    1. A SOAP 1.2 message is not valid when sent to a SOAP 1.1 only endpoint.   问题原因: 客户端和服务端的SOAP协议版本不一 ...

  6. HTML标签拾遗

    在日常的开发过程中,经常与HTML标签打交道,常用的标签往往是那么几个,在此记录下后续可能会用到的html标签,或许会有意向不到的奇效.全部内容来自w3cschool. <abbr>   ...

  7. SqlServer字段说明查询

    SELECT t.[name] AS 表名,c.[name] AS 字段名,cast(ep.[value] )) AS [字段说明] FROM sys.tables AS t INNER JOIN s ...

  8. ionic

    ionic是一个用来开发混合手机应用的,开源的,免费的代码库.可以优化html.css和js的性能,构建高效的应用程序,而且还可以用于构建Sass和AngularJS的优化.ionic会是一个可以信赖 ...

  9. PHP实现队列及队列原理

    看看各语言实现队列的方法:PHP实现队列:第一个元素作为队头,最后一个元素作为队尾 <?php /** * 队列就是这么简单 * * @link http://www.phpddt.com */ ...

  10. winform版弹框操作

    公共弹框帮助类操作手册 1.说明 封装了对于winform操作的一些提示框,包括数据加载耗时的时候,提示数据正在加载,请稍后的提示窗体,动态提示给用户一些有用的信息.例如网吧里面续费提醒等. 2.操作 ...