vi的使用:

  • 一般指令模式: 
    vi打开一个文件就直接进入一般指令模式,可以进行删除、复制、粘贴。但是不可以对文件的内容进行修改。 
    常用命令:
ctrl + f 向下移动一页
ctrl + b 向上移动一页
0或者home 移动到当前行的最前面
$或者end 移动到当前行的最后面
G 移动到文件的最后一行
gg 移动到文件的第一行
n<Enter> 光标向下移动n行
/word 光标向下搜寻一个名称为word的字符串
:1,$s/word1/word2/g 从第一行到最后一行寻找word1字符串,并将其替代为word2
xX 向前删除一个字符
dd 删除当前行
yy 复制当前行
pP p为将已经复制的数据粘贴在光标的下一行,P将数据复制到光标的上一行
u 撤销
ctrl + r 重复上一个动作
  • 编辑模式: 
    按下【(a,A,i,I,o,O)插入,r,R(取代)】等任意一个字母进入编辑模式 
    按下Esc可以退出编辑模式

  • 指令列命令模式: 
    一般模式输入,/,三个中的任意一个进入该模式。 
    常用命令:

wq 保存并退出
wq! 强制保存并退出
set nu/nonu 显示行号/不显示行号
set ff 显示文件类型
set ff=unix 将文件类型设置成unix

注意:

    • !一般这个都有强制的含义。
    • 当vim没有保存就退出时,可以通过文件.swp这个暂存档恢复文档。

linux下的vi的使用方法的更多相关文章

  1. linux下恢复误删除的文件方法(ext2及ext3)

     linux下恢复误删除的文件方法(ext2及ext3) 2009-12-19 15:23:47 分类: LINUX 如果是ext2文件系统的,直接用debugfs是可以恢复出来的,但对于ext3,d ...

  2. windows下编辑过的文件在Linux下用vi打开行尾会多出一个^M符号

    一般情况下,windows下编辑过的文件在Linux下用vi打开行尾会多出一个^M符号,如下图: 这是因为Windows等操作系统用的文本换行符和UNIX/Linux操作系统用的不同,Windows系 ...

  3. linux下使用vi操作

    ESC : 进入命令模式 linux下使用vi后,怎样跳转到文件结尾 pagedown键连续按 虽然我也这么用,但还是太笨了.问了高手,方法是按shift+g,另外,到文件开头是gg.   linux ...

  4. linux下执行.sh文件的方法和语法

    linux下执行.sh文件的方法    .sh文件就是文本文件,如果要执行,需要使用chmod a+x xxx.sh来给可执行权限.       是bash脚本么   可以用touch test.sh ...

  5. Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches

    Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches 频繁的文件访问会导致系统的Cache使用量大增 $ free -m total used free shared ...

  6. Linux下Git和GitHub使用方法总结

    来源:Linux下Git和GitHub使用方法总结 1 Linux下Git和GitHub环境的搭建 第一步: 安装Git,使用命令 “sudo apt-get install git” 第二步: 到G ...

  7. linux下生成core dump文件方法及设置

    linux下生成core dump文件方法及设置    from:http://www.cppblog.com/kongque/archive/2011/03/07/141262.html core ...

  8. Linux下memcached安装和启动方法

    Linux下memcached安装和启动方法 1. 首先下载memcached 和 libevent 包. Memcached用到了libevent这个库用于Socket的处理.下面是下载的两个包文件 ...

  9. Linux下SVN的一些使用方法总结

    Linux下SVN的一些使用方法总结   近期的一个项目不方便 Check 到本地,需要在测试服务器上进行编写和测试,所以就研究了一下如何在 Linux 命令行下使用 SVN. 首先 svn help ...

随机推荐

  1. 大写金额换算器iOS版源码

    大写金额换算器iOS版源码 人民币金额大写转换器输入数字就可以转换成相应的人民币大写金额,操作很easy,需一键点击,就可以复制. 是財务办公人员必备的小工具. 银行.单位和个人填写的各种票据和结算凭 ...

  2. JPA学习笔记(13)——查询缓存

    使用hibernate的查询缓存 运行下面代码: String jpql = "FROM User u WHERE u.id = ?"; Query query = entityM ...

  3. ROADS - Roads

    N cities named with numbers 1 ... N are connected with one-way roads. Each road has two parameters a ...

  4. windows 下 opencv 3.x 的安装及常见问题的解决

    1. 下载与配置 下载地址:Releases - OpenCV library(选择合适的平台和版本) 配置步骤见:VS 2013 统一修改所有工程的目录配置(以 boost.opencv3 的安装为 ...

  5. SmartDispatcher 类

    UI线程中使用 public class SmartDispatcher { public static void BeginInvoke(Action action) { if (Deploymen ...

  6. java enum int String 相互转换

    1.  enum<->int enum -> int: int i = enumType.value.ordinal(); int -> enum: enumType b= e ...

  7. Knights of the Round Table(Tarjan+奇圈)

    http://poj.org/problem?id=2942 题意:n个武士,某些武士之间相互仇视,如果在一起容易发生争斗事件.所以他们只有满足一定的条件才能参加圆桌会议:(1)相互仇视的两个武士不能 ...

  8. python自动化测试学习笔记-4内置函数,处理json

    函数.全局变量 写代码时注意的几点事项: 1.一般写代码的时候尽量少用或不用全局变量,首先全局变量不安全,大家协作的情况下,代码公用容易被篡改,其次全局变量会一直占用系统内容. 2.函数里如果有多个r ...

  9. j建立一个小的servlet小程序

    我们建立一个最简单的servlet程序,这个servelt程序只是单纯的输出helloworld. 步骤如下:如图:在Eclipse中选择新建一个项目,其中选择tomcat project然后点击下一 ...

  10. ACM_堆箱子咯(栈)

    堆箱子咯 Time Limit: 2000/1000ms (Java/Others) Problem Description: 双十一大家都在买买买,可忙坏了快递小哥了.zl和皮卡鸡在大伙在剁手的时候 ...