vi编辑器,全称是visual interface,可以执行输出、删除、查找、替换等众多的文本操作。
vi并不是一个排版程序,不可以对字体、格式、段落等其他的属性进行编排。
vi是全屏文本编辑程序,没有菜单,只有命令。
语法:vi filename 打开或新建文件filename,并将光标置于第一行首
vi +5 filename 打开文件,并将光标置于第五行首
vi + filename 打开文件,并将光标置于最后一行行首
vi +/nimei filename 打开文件,并将光标置于第一个与nimei匹配的行首
vi -r filename 打开上次用vi编辑发生系统崩溃,恢复之前状态
删掉隐藏的.swp文件     原因未保存就关闭vi编辑器,文件只保存在内存中未保存在硬盘中
 
3种模式
命令模式进入输入模式:a 添加 在光标后添加
A 添加 在光标所在行行尾添加
i 插入 在光标前添加
I 插入 在光标所在行行首添加
o 在光标所在行下添加一行并进入输入模式
O 在光标所在行上添加一行并进入输入模式
输入模式进入命令模式:esc
命令模式进入末行模式::
末行模式进入命令模式:esc
命令模式下的操作
 
重点:命令模式可以切入到编辑模式,同理命令模式可以切换到末行模式,但编辑模式和末行模式不能互相切换
复制/粘贴
y 复制
p 粘贴
yy 是指将复制光标所在行(整行)
范围
e 光标所在位置到该字的最后一个字母
w 光标所在位置到下个字的第一个字母
b 光标所在位置到上个字的第一个字母
$ 光标所在位置到该行的最后一个字母
0 光标所在位置到该行第一个字母
) 光标所在位置到下个句子第一个字母
( 光标所在位置到该句子的第一个字母
} 光标所在位置到该段落最后一个字母
{ 光标所在位置到该段落的第一个字母
删除/修改
x 删除光标所在字符
dd 删除光标所在的行
r 修改光标所在字符,r后是要修正的字符
R 进入替换状态,输入的文本会覆盖原先资料,直到按ESC回到命令模式为止
s 删除光标所在字符,进入输入模式
S 删除光标所在的行,进入输入模式
cc 修改整行文字
u 撤消上次操作
. 重复上次操作
末行模式下的操作
查找替换
  • 查找/ ?(加你找的单词)
  • 定位光标:输入行号n
  • 使用字符串2替换当前行首次出现的字符串1:s/字符串1/字符串2
  • 使用字符串2替换当前行所有的字符串1:s/字符串1/字符串2/g
  • 将n1行到n2行中所有字符串1替换为字符串2:2,3 s/字符串1/字符串2/g
  • 将光标所在行到n行,中的字符串1替换为字符串2:.,5 s/字符串1/字符串2/g
  • 替换全文的字符串1为字符串2:% s/字符串1/字符串2/g
 
wq保存/退出
q 退出
w 保存
x 保存退出
! 强制

1月4日笔记 vi编辑器的更多相关文章

  1. 1月4日笔记 (vi编辑器)更新...

      vi编辑器,全称是visual interface,可以执行输出.删除.查找.替换等众多的文本操作. vi并不是一个排版程序,不可以对字体.格式.段落等其他的属性进行编排. vi是全屏文本编辑程序 ...

  2. Unix\Linux | 总结笔记 | vi编辑器

    0 目录   新建文件夹   常用的命令    三种模式及切换    vi编辑器的启动选项及后续相关操作  其他--替换文本  其他--写入另一个文件     1  新建文件夹  vi [目录名/文件 ...

  3. linux 基本命令2(12月27日笔记)

    1.ifconfig 作用:用于操作网卡相关的指令 简单语法:#ifconfig      (获取网卡信息)   2.reboot 作用:重新启动计算机 语法1:#reboot             ...

  4. linux 基础命令(12月25日笔记)

    1.  cp指令指令:cp          (copy,复制)作用:复制文件/文件夹到指定的位置语法:#cp [-r] 被复制的文档路径 文档被复制到的路径选项:         -r:recurs ...

  5. 关于IIS的4月26日笔记

    常用命令: 31. regedit.exe----注册表 48. msconfig.exe---系统配置实用程序  80. services.msc---本地服务设置 93. regedit.exe- ...

  6. 5月23日笔记-js绑定事件、解绑事件、复合事件

    each() $("p").each(function(i,ele){ //alert(ele.innerHTML); alert($("p:eq("+i+&q ...

  7. RxJava2.0学习笔记2 2018年7月3日 周二

    摘记: 1.map -- 转换  有些服务端的接口设计,会在返回的数据外层包裹一些额外信息,这些信息对于调试很有用,但本地显示是用不到的.使用 map() 可以把外层的格式剥掉,只留下本地会用到的核心 ...

  8. Linux学习笔记(四) vi编辑器

    一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...

  9. linux学习笔记--vi与vim编辑器

    vi编辑器全名为Visual Interface,即为可视化接口,类似于Windows中的记事本 vim相当于是vi的一个升级版本,包含vi的一切操作命令,vim相对于vi做了哪些提升: 1.vim支 ...

随机推荐

  1. 创建一个简单的WCF程序2——手动开启/关闭WCF服务与动态调用WCF地址

    一.创建WCF服务器 1.创建WCF服务器的窗体应用程序 打开VS2010,选择文件→新建→项目菜单项,在打开的新建项目对话框中,依次选择Visual C#→Windows→Windows窗体应用程序 ...

  2. Django 安装 创建项目 运行项目

    Django基础 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. 对于所有的We ...

  3. CAT Caterpillar ET is really a exceptional obd2 solution

    As a excellent obd2 solutions,Heavy Duty Diagnostic CAT Caterpillar ET Diagnostic Adapter features a ...

  4. 自学Java第二周的总结

    在这一周里我在网上学习了java的对象和类,了解了对象与类以及简单的用法.对象是类的一个实例(对象不是找个女朋友),有状态和行为.例如,一条狗是一个对象,它的状态有:颜色.名字.品种:行为有:摇尾巴. ...

  5. linux grep 正则表达式

    grep正则表达式元字符集: ^ 锚定行的开始 如:'^grep'匹配所有以grep开头的行. $ 锚定行的结束 如:'grep$'匹配所有以grep结尾的行. . 匹配一个非换行符的字符 如:'gr ...

  6. jsp与后台交换数据(安全目录外)

    function changebasin(rivername,codepollute){ $.ajax({ type: "POST", url: "${ctx}/wate ...

  7. Linux下的Jmeter运行测试

    本文主要介绍Jmeter脚本如何在Linux通过no GUI的方式运行.总共分三部分: 1.Linux下JDK的安装及环境变量的配置 2.Linux下Jmeter的安装及环境变量的配置 3.运行结果的 ...

  8. linux下启动多个php,分别监听不同的端口。

    在工作中,我们可能会遇到,服务器集群的搭建. 这个时候,我们不可能,每一台服务器都是lnmp的环境,我们会把nmp分别放在不同的服务器上,不同的服务器负责不同的功能.比如我们下面要说的php 加入ng ...

  9. Git clone 报错 Unable to negotiate with xxx.xxx.xxx.xxx port 12345: no matching cipher found. Their offer: aes128-cbc,3des-cbc,blowfish-cbc

    git clone 报错 Unable to negotiate with xxx.xxx.xxx.xxx. port 12345: no matching cipher found. Their o ...

  10. eclispe设置workspace text file encoding

    在windows下开发,经常会遇到eclipse新导入的工程 java代码中的注释或者字符串中文显示乱码,每次都要一个个项目更改麻烦,特地找了下,可通过如下方法一次性设置.