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. DBUtils (30)

    DBUtils是java编程中的数据库操作实用工具,小巧简单实用. DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码. Dbutils三个核心功能介绍 一.  QueryRunn ...

  2. JDK8 元空间

    1. 运行时常量池和静态变量都存储到了堆中,MetaSpace存储类的元数据,MetaSpace直接申请在本地内存中(Native memory),这样类的元数据分配只受本地内存大小的限制,OOM问题 ...

  3. 2018年Android面试题含答案--适合中高级

    1.java中==和equals和hashCode的区别  基本数据类型的==比较的值相等. 类的==比较的内存的地址,即是否是同一个对象,在不覆盖equals的情况下,同比较内存地址,原实现也为 = ...

  4. Java学习路线教程之JDBC基本操作

    为了帮助大家熟练应用JDBC编程,接下来,在本节将通过一个综合案例来讲解JDBC的基本操作,确保大家能够深刻理解JDBC的增.删.改.查,灵活利用JDBC完成对数据库的各项操作. 1. 创建一个Jav ...

  5. redis-3.2 集群

    目录 简介 集群简介 Redis 集群的数据分片 Redis 集群的主从复制模型 Redis 一致性保证 redis 集群间的通信 环境 安装Ruby 部署 安装Redis略 创建集群 集群节点信息 ...

  6. php+js 防止被抓包篡改数据,数据签名校验

    签名密钥,这个是自己生成的,需要客户端+服务端一致. <?php /** * 获取签名 * @param $data 提交的数据 * @param $key 安全密钥 * @return boo ...

  7. ztree实现表格风格的树状结构

    zTree官方api: http://www.treejs.cn/v3/api.php 原理很简单:利用zTree的addDiyDom方法,自定义每个DOM节点,在原来的节点后面加一些div,再利用c ...

  8. django图书管理系统实例

    首页,其他页面全部继承首页的上半部分 点击发布图书页面 首页点击书名,跳转到图书信息界面,该界面可删除图书 项目结构 #views.py from django.shortcuts import re ...

  9. JVM优化-JVM参数配置

    配置方式: java [options] MainClass [arguments] options - JVM启动参数. 配置多个参数的时候,参数之间使用空格分隔. 参数命名: 常见为 -参数名 参 ...

  10. Spring Boot(十八):使用Spring Boot集成FastDFS

    Spring Boot(十八):使用Spring Boot集成FastDFS 环境:Spring Boot最新版本1.5.9.jdk使用1.8.tomcat8.0 功能:使用Spring Boot将文 ...