i 光标所在前插入
I 光标所在行的第一个非空字符前进入输入模式
a 光标所在后插入
A 光标所在最后插入
o 光标所在列下新增一列并进入输入模式
O 光标所在列上新增一列并进入输入模式

退出 :q,:q!,:wq或:x

x 删除光标所在的字符
dd 删除一行
dw 删除单词,需光标在首字母
r 修改光标所在的字符,只接受1个输入
R 进出替换状态,直至按下esc才终止替换(后面的字符直接被替换)
s 删除光标所在的字符,并进入替换状态
S 删除光标所在的行,并进入替换状态
h j k l 左下上右
u 是撤销

光标移动操作
$移动到行末
ctrl d向下半页
ctrl f向下一页
ctrl u向上半页
ctrl b向上一页

H 移动到视角的第一行
M 移动到视角的中间行
L 移动到视角的最后行

:数字 移动到多少行
:t0把光标所在的行复制到第0行上
/string 查找string所在的位置 n是下一个位置

编辑指令
d 删除
c 修改
p 放置
y 复制 yank
编辑指令跟的参数
e 光标位置到该字的最后一个字符
w 光标位置到另一个字的首字符 //同e相比较 this is :a,光标在t 执行de 则 is :a\执行dw则is :a\dw比de多删了一个空格
b 光标所在位置的前一个字符 与dw de 相比,db是向前删除 ,而de dw是向后
$ 光标位置到行末,距离d$则删除光标位置到行末
ALT ~ 大小写的转换

vi 学习记录的更多相关文章

  1. Matlab 进阶学习记录

    最近在看 Faster RCNN的Matlab code,发现很多matlab技巧,在此记录: 1. conf_proposal  =  proposal_config('image_means', ...

  2. GIT初始学习记录

    目录 GIT学习记录 配置github与gitlib两个账号 基本操作 git init:初始化仓库 git status:查看仓库状态 git add :向缓存区中添加文件 git commit 保 ...

  3. 区块链Hyperledger Fabric 学习记录(一)开发环境搭建(ubuntu16.04/ubuntu18.04)

    目录 Fabric开发环境搭建 更新说明 教程环境及软件版本 Docker 安装Docker 配置用户组 配置Aliyun Docker加速器 安装docker-compose Go 下载源码 安装源 ...

  4. # Linux 命令学习记录

    Linux 命令学习记录 取指定文件夹下的任意一个文件,并用vim打开 vi $(ls -l|grep "^-"|head -n 1|awk '{print $9}') 统计给定文 ...

  5. Quartz 学习记录1

    原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...

  6. Java 静态内部类与非静态内部类 学习记录.

    目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...

  7. Apache Shiro 学习记录4

    今天看了教程的第三章...是关于授权的......和以前一样.....自己也研究了下....我觉得看那篇教程怎么说呢.....总体上是为数不多的精品教程了吧....但是有些地方确实是讲的太少了.... ...

  8. UWP学习记录12-应用到应用的通信

    UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...

  9. UWP学习记录11-设计和UI

    UWP学习记录11-设计和UI 1.输入和设备 通用 Windows 平台 (UWP) 中的用户交互组合了输入和输出源(例如鼠标.键盘.笔.触摸.触摸板.语音.Cortana.控制器.手势.注视等)以 ...

随机推荐

  1. Jmeter中模拟多用户执行多场景操作

    1.其实一个用户组就是一个场景(Thread Group).可以在一个测试计划中进行多个场景的执行,在测试计划下加一个全局的User Defined Variables,在这个里面可以设置执行总数to ...

  2. [NOIP补坑计划]NOIP2015 题解&做题心得

    感觉从15年开始noip就变难了?(虽然自己都做出来了……) 场上预计得分:100+100+60~100+100+100+100=560~600(省一分数线365) 题解: D1T1 神奇的幻方 题面 ...

  3. LAMP自动安装脚本

    #!/bin/bash # 功能描述:LAMP自动安装脚本 # 初始化 if [ "$(cat /etc/system-release | awk '{print $(NF-1)}' | a ...

  4. qml与c++混合编程

    QML 与 C++ 混合编程内容:1. QML 扩展2. C++ 与 QML 交互3. 开发时要尽量避免使用的 QML 元素4. demo 讲解5. QML 语法C++ 与 QML 的交互是通过注册 ...

  5. 解决utf8' codec can't decode byte 0xe5 in position 0: unexpected end of data

    使用unicode对象的话,除了这样使用u标记,还可以使用unicode类以及字符串的encode和decode方法. unicode类的构造函数接受一个字符串参数和一个编码参数,将字符串封装为一个u ...

  6. 小学生都能学会的python(运算符 和 while循环)

    ---恢复内容开始--- 小学生都能学会的python(运算符和编码) 一.格式化输出 #占位:"%s"占位,占得是字符串,"%d"占位,占的是数字. # 让用 ...

  7. C语言使用memcpy函数实现两个数间任意位置的复制操作

    c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中. 用法:void *memcpy(void *dest ...

  8. js实现新闻滚动实例

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  9. sql server 与 mysql在自定以数据类型的区别

    sql server   中可以使用 create  TYPE postal_code FORM varchar(6) not null; 用于限定邮编的数据位数,他基于varchar数据类型 注意: ...

  10. ZOJ 3688

    做出这题,小有成就感 本来已打算要用那个禁位的排列公式,可是,问题在于,每个阶乘前的系数r的求法是一个难点. 随便翻了翻那本美国教材<组合数学>,在容斥原理一章的习题里竟有一道类似,虽然并 ...