首先讲一些vim和vi的区别:

它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。
vim的这些优势主要体现在以下几个方面:
1、多级撤消
我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。
2、易用性
vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。
3、语法加亮
vim可以用不同的颜色来加亮你的代码。
4、可视化操作
就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。
5、对vi的完全兼容
某些情况下,你可以把vim当成vi来使用。
vi和vim都是Linux中的编辑器,不同的是vim比较高级,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。

h向左移动一个字符
l向右移动一个字符
j向下移动一行
nj向下移动n行

k向上移动一行

nk向上移动n行
gg或者:1移动到文件第一行
G移动到文件最后一行
w移动到下一个字的开头(不忽略有换行符或者空格)
W移动到下一个字的开头(忽略标点不忽略有换行符或者空格)
e移动到下一个字结尾
E移动到下一个字结尾忽略标点
b移动到当前字或前一个字开头
B移动到前一个字开头忽略标点
L移动到屏幕最后一行
M移动到屏幕中间一行
H移动到屏幕第一行
(即:shift+9移动到句子开头
)即:shift+0移动到句子结尾
{移动到段落开头
}移动到下一个段落开头
0(数字)或者| 移到当前行的第一列
^移到当前行的第一个非空字符
$移到当前行的最后一个字符
+或者Enter 移到下一行的第一个字符
-移到前一行的第一个非空字符

a在光标后插入文本
A在当前行尾插入文本
i在光标前插入文本
I在当前行前插入文本
o在当前行下边插入新行
O在当前行上边插入新行
s删除光标所在处字符,并进入插入模式
S删除光标所在行,并进入插入模式

Esc回到命令模式

u撤销操作

U撤消当前行的全部改动
ctrl+r反复键入,和撤销相反
.反复最后一次改动

x删除当前光标的字符,向后删除
X删除当前光标前的单词,向前删除
dl删除一个字符
dw删除到下一个字的开头
daw删除当前单词
dap删除一个段落
dd删除整行

:w保存文件但不退出
:w file将改动保存再file中但不退出vi
:wq或者ZZ或者:x保存文件并退出
:q!不保存文件,退出vi
:e!放弃全部改动,从上次保存文件开始再编辑

:set nu每行前打印行号

vim选择文本
v从光标当前位置开始,光标所经过的地方被选中,然后再按v取消选择。
V从光标当前行开始,光标所经过的行都被选中,然后再按V取消选择。
ctrl+v从当前光标位置开始,选中光标起点和终点构成的矩形区域,再按一下ctrl+v取消选择。
ggVG选中全部文本,gg为跳到首行,V选中整行,G末尾

对选中的文本进行删除,复制,粘贴
d删除
y复制(默认复制到寄存器)
p粘贴(默认从寄存器取出内容粘贴)
"+y复制到系统剪切板
"+p从剪切板粘贴

屏幕操作

crtl和y向上滚屏
crtl和e向下滚屏
ctrl和u向上滚半屏
crtl和d向下滚半屏
ctrl和b向上滚整屏
ctrl和f向下滚整屏

参考:

https://www.cnblogs.com/mengfanrong/p/5069719.html
https://www.cnblogs.com/yangjig/p/6014198.html

vi/vim命令使用的更多相关文章

  1. 【mark】自己整合的vi/vim命令

    又发现一篇很好的 http://blog.chinaunix.net/uid-16759545-id-4891666.html 又发现一个很好的系列:有空闲要精读一下: http://www.cnbl ...

  2. Linux学习---vi/vim命令

    Vim是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用. 所以本文直接用Vim编辑器 基本上 vi/vim 共分为三种模式,分别是命令模式( ...

  3. 【学习总结】vi/vim命令是使用

    每次要么想不起来用,要么进去了出不来,真是醉了.痛定思痛此处填坑. 参考教程:菜鸟教程vi/vim 实验环境:借Git-bash宝地一用 注意:记住关键的步骤! 按i a o进入输入模式(即使有时按v ...

  4. Linux vi/vim命令高效助记图

    图片来源网上,如有侵权,请告知,我会删除掉,谢谢~ 常用编辑按键: 1 vi +[num] file 打开文件,并将光标置于第n行首 2 vi + file 打开文件,并将光标置于最后一行首 3 vi ...

  5. vi/vim 命令使用详解

    1.Linux下创建文件 vi test.txt 或者 vim test.txt 或者 touch test.txt 2.vi/vim 使用 基本上 vi/vim 共分为三种模式,分别是命令模式(Co ...

  6. -Git Linux vi/vim 命令 按键 MD

    目录 目录 Linux vi/vim 简介 vi/vim 的使用 命令模式 输入模式 底线命令模式 vi/vim 使用实例 使用 vi/vim 进入一般模式 按下 i 进入输入模式,开始编辑文字 按下 ...

  7. Linux vi/vim命令

    转自:http://www.runoob.com/linux/linux-vim.html Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一 ...

  8. tee、vi/vim命令

    一.tee:多重定向 语法:       tee [OPTION] ... [FILE] ... 参数:       将标准输入复制到每个FILE,也复制到标准输出. -a,--append      ...

  9. 3、Linux基础--cp、mv、rm、alias、vi/vim命令

    笔记 1.考试 1.判断网络是否通畅的命令 ping 2.定义系统提示组成的变量 PS1 3.Linux中目录从什么开始 根(/) 4.系统中目录路径类型有哪些,解释一下 绝对路径:以根目录作为参照物 ...

  10. vi/vim命令

    vi / vim是Unix / Linux上最常用的文本编辑器而且功能非常强大.

随机推荐

  1. Linux搭建.net core CI/CD环境

    一.简介 微服务开发中自动化.持续化工程十分重要,在成熟的CI/CD环境中项目团队可以灵活分配,大大提供团队效率.如果还不了解什么是CI/CD,可以先查看相关文章,这里主要介绍环境的搭建,相关原理就不 ...

  2. xgboost&lightgbm调参指南

    本文重点阐述了xgboost和lightgbm的主要参数和调参技巧,其理论部分可见集成学习,以下内容主要来自xgboost和LightGBM的官方文档. xgboost Xgboost参数主要分为三大 ...

  3. python 判断数据类型及释疑

    Python 判断数据类型有type和isinstance 基本区别在于: type():不会认为子类是父类 isinstance():会认为子类是父类类型 class Color(object): ...

  4. Linux一些常用的命令

    常见命令 cd命令 cd命令用来切换工作目录至dirname, 其中dirName表示法可为绝对路径或相对路径. pwd命令 pwd命令以绝对路径的方式显示用户当前工作目录. ls命令 ls命令用来显 ...

  5. win10 LTSC 2019 激活

    win 10 打开终端 1.slmgr -ipk M7XTQ-FN8P6-TTKYV-9D4CC-J462D 2.slmgr -skms kms.03k.org 3.slmgr -ato 4. slm ...

  6. 关于STM32的I2C硬件DMA实现

    关于STM32的I2C硬件DMA实现 网上看到很多说STM32的I2C很难用,但我觉得还是理解上的问题,STM32的I2C确实很复杂,但只要基础牢靠,并没有想象中的那么困难. 那么就先从基础说起,只说 ...

  7. SuperSocket实例

    下载地址:https://files.cnblogs.com/files/xixixing/ConsoleApp.zip 创建控制台应用程序:ConsoleApp MySession.cs using ...

  8. 【Python之路】特别篇--服务商API认证、Restful、一致性哈希

    API加密方式 1/ 加密方式: Md5 (随机字符串 + 时间戳) 2/ 发送方式: http://127.0.0.1:8888/index?pid= MD5加密值 | 时间戳 | 序号 服务端接收 ...

  9. toggle([speed],[easing],[fn]) 用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。

    toggle([speed],[easing],[fn]) 概述 用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件. 如果元素是可见的,切换为隐藏的:如果元素是隐藏的,切换为 ...

  10. CPU结构及段地址偏移地址的概念

    原文地址:http://blog.csdn.net/yihuiworld/article/details/7533335#comments 程序如何执行: CPU先找到程序在内存中的入口地址 -- 地 ...