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. sql server和oracle数据库

    sql server和oracle数据库安装按照官方教程即可:以及他们相应的管理工具,sql server management studio自带的,oracle的管理工具PLSQL需要单独下载安装, ...

  2. JAVA基础3---JVM内存模型

    Java虚拟机执行Java程序的时候需要使用一定的内存,根据不同的使用场景划分不同的内存区域.有公用的区域随着Java程序的启动而创建:有线程私有的区域依赖线程的启动而创建 JVM内存模型大致可以分为 ...

  3. (cvpr2019 ) Technology details of Deep Learning for Multiple-Image Super-Resolution

    Mutiple-Image SSR 关键的技术imformation fusion 1. 将单一场景的多图像经过Resnet, 其中每张图片的维度变为了输入的两倍.同时,这些输入的单一场景的多图像进行 ...

  4. 常用正则表达式爬取网页信息及HTML分析总结

    Python爬取网页信息时,经常使用的正则表达式及方法. 1.获取<tr></tr>标签之间内容 2.获取<a href..></a>超链接之间内容 3 ...

  5. LINUX部署SVN服务器

    1.安装SVN服务端 yum install -y subversion 2.创建svn版本库 mkdir -p /data/svn/myproject svnadmin create /data/s ...

  6. ES6知识整理(2)--变量的解构赋值

    最近准备在业余空闲时间里一边学习ES6,一边整理相关知识.只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是真正的学到了... 上一篇是一个试水,现在接上. 变量提升 看了下朋友回复 ...

  7. Maven笔记 #01# 入门

    索引 Maven是干什么的? 用Maven的好处 Maven与命令行 Maven与IntelliJ IDEA 一.Maven是干什么的? 我相信只要你写过足够多的代码,就... 肯定有思考过写一个脚本 ...

  8. Docker学习笔记之通过 Dockerfile 创建镜像

    0x00 概述 由于 Docker 镜像的结构优势,使它的占用空间远小于普通的虚拟机镜像,而这就大幅减少了 Docker 镜像在网络或者其他介质中转移所花费的时间,进而提高了我们进行迁移部署的效率.不 ...

  9. navicat mysql导出数据 批量插入的形式

    这里介绍的是mysql 相同服务器类型数据传输的高级设置 选中数据库后右键“ 转储SQL文件”默认导出的记录格式是一条条的,采用的是”完整插入语句”,格式如下 '); '); '); 这种格式保证了兼 ...

  10. Golang生成区间随机整数

    package main import ( "fmt" "math/rand" "time" ) func main() { rand.Se ...