哎,看书上vi命令那么多,真是记不住。记几个常用的备忘吧。

在一般模式下(不可编辑),比如用vi命令打开或创建一个文件,常用的命令如下:

按键 作用
h或← 光标左移动一个字符
j或↓ 光标下移动一个字符
k或↑ 光标上移动一个字符
l或→ 光标右移动一个字符
数字0 光标到一行的开头
$ 光标到一行的末尾
G 光标移动到文件最后一行
gg 光标移动到文件第一行
n+回车键(n为数字) 光标向下移动n行
/word 从光标开始向下寻找word的字符串
x(小写) 向后删除一个字符,相当于 delete键
X(大写) 向前删除一个字符,相当于退格
dd 删除光标所在的那一行
ndd(n为数字) 从光标开始删除下面的n行
yy 复制光标所在的那一行
nyy(n为数字) 复制从光标开始的那一行到下面n行
p(小写) 将复制的数据粘贴到光标的下一行
P(大写) 将复制的数据粘贴到光标的上一行
u

复原上次操作

ctrl+r 重复上一个操作
i或I

开启编辑模式,在当前光标处插入文字

还有类似其他的,太难记,想到i是联想到insert首字母

ESC 退出编辑模式到一般模式
:w 编辑的数据写入文件
:w! 强制写入
:q 离开vi编辑器
:wq 保存并退出
:wq! 强制存储离开

带冒号的都是在一般模式下使用,否则就是正常的插入而已。要使用带冒号的命令先按ESC键保证退出编辑模式到一般模式。

虽然不全面,但是应该够用了。

vi常用命令的更多相关文章

  1. vi 常用命令行

    vi 常用命令行 1.vi 模式  a) 一般模式: vi 处理文件时,一进入该文件,就是一般模式了.  b) 编辑模式:在一般模式下可以进行删除,复制,粘贴等操作,却无法进行编辑操作.等按下‘i,I ...

  2. Linux vi常用命令

    vi常用命令[Ctrl] + [f] 屏幕『向前』移动一页(常用)[Ctrl] + [b] 屏幕『向后』移动一页(常用)0 这是数字『 0 』:移动到这一行的最前面字符处(常用)$ 移动到这一行的最后 ...

  3. [转]vi 常用命令行

    From : http://www.cnblogs.com/sunormoon/archive/2012/02/10/2345326.html vi 常用命令行 1.vi 模式  a) 一般模式: v ...

  4. Linux笔记:vi常用命令

    vi编辑器是所有Unix及Linux系统下标准的编辑器,在很多时候我们都需要使用vi修改服务端配置,vi其实非常强大,只要命令使用熟练的情况下,编辑速度并不亚于现在的图形化编辑器,这里简单地介绍一下它 ...

  5. Linux的vi常用命令详解

    1.vi的基本概念  基本上vi可以分为三种状态,分别是命令模式(command mode).插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:   ...

  6. vi常用命令及快捷键

    vi常用快捷键 1)移动光标 h :光标左移一个字符j :光标上移一个字符k :光标下移一个字符l :光标右移一个字符 0 :光标移至行首$ :光标移至行尾 H :光标移至屏幕首行M :光标移至屏幕中 ...

  7. Linux学习笔记:vi常用命令

    在Linux系统中常用vi命令进行文本编辑. vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器.Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved), ...

  8. Linux入门学习笔记1:VI常用命令

    常用命令 yy 复制 p 黏贴 shift+v 多行选中 shift+ctrl+< 左移 shift+ctrl+> 右移 ndd 删除光标所在行及其后n-1行 i 进入编辑状态 esc 退 ...

  9. linux之文本编辑器vi常用命令

    由于经常在linux下面文本操作,所以这里稍微系统的总结一下自己常用的vi命令 1.打开命令: vi+filename  (还有各种打开的姿势,只不过我比较顺手这个) 2.退出命令: :q   退出而 ...

随机推荐

  1. ANDROID学习之路 转

    版权声明:本文为 stormzhang 原创文章,可以随意转载,但必须在明确位置注明出处!!! 这篇博客背后的故事 一路走来很不容易,刚好知乎上被人邀请回答如何自学android编程, 就借这个机会在 ...

  2. 安装oracle数据库,登录 时无法连接目标机

    oracle11g 在dos命令里输入输入sqlplus 输入如用户名: 输入口令: 还是无法连接 解决办法: 输入sqlplus/nolog按enter键再输入conn/as sysdba就好了

  3. winform基本控件的使用2(用户登录界面的设计)

    首先还是通过例子来讲解,这次的实验主要是使用messageBox的使用方法,关于messageBox的使用方法在我的博客里面有相关的转载,请自己查看,下面说一下实验要求. 功能要求:模拟一个用户登陆的 ...

  4. 【mysql】Infobright和mysql数据入库性能测试

    产生测试文件 测试文件部分内容如下: 产生测试文件代码: package foo; import java.io.File; import java.io.FileWriter; import jav ...

  5. android安装busybox

    大家是否有过这样的经历,在命令行里输入adb shell,然后使用命令操作你的手机或模拟器,但是那些命令都是常见Linux命令的阉割缩水版,用起来很不爽.是否想过在Android上使用较完整的shel ...

  6. MySQL concat函数的使用

    MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习. MySQL concat函数使用方法:CONCAT(str1 ...

  7. MVC3升级为MVC4

    在程序包管理控制台输入 Install-Package UpgradeMvc3ToMvc4 等待 升级完成

  8. [JavaScript]JS由来

    JavaScript最早由Netscape公司开发 JavaScript的发展历程 我们知道Windows桌面程序是可以交互的,用户可以点击菜单.按钮.下拉列表等控件,并通过消息机制来响应用户操作. ...

  9. java数据传递例子+内存分析

    一.引用传递 1.例子1 package com.jikexueyuan.ref; class Ref1{ int temp = 10; } public class RefDemo01 { publ ...

  10. Unity3D人物头顶名称与血条更新与绘制

    using UnityEngine; using System.Collections; public class NPC : MonoBehaviour { //主摄像机对象 private Cam ...