1. vi 供分为三种模式:一般模式、编辑模式和命令行模式。i / Esc + :wq :q :q! 使vi在一般模式与编辑模式中来回转换。

  • /word 向下寻找一个名称为word的字符串; ?word向上寻找一个名称为word的字符串。
  • x, X:在一行字中,向右删除一个字符。
  • dd: 删除光标所在的一行。
  • yy: 复制光标所在的那一行(常用)
  • nyy: 复制光标所在的向下n行(常用)
  • yG: 复制光标所在行到最后一行的所有数据
  • p: 将已复制的数据在光标下一行粘贴
  • P:将已复制的数据在光标的上一行粘贴
  • u: 复原前一个操作(常用)
  • [Ctrl]+r: 重做上一个操作(常用)

2. 一般模式切换到编辑模式时常用:

i, I 进入插入模式,i为目前光标所在处插入,I为在目前所在行的第一个非空格符处开始插入(常用)。

3. 一般模式切换到命令行模式常用:

  • :w 将编辑的数据写入硬盘文件中(常用)
  • :w! 若文件为只读文件是,强制写入该文件,但是到底能不能写入还要看你当前所拥有的权限。
  • :q 离开vi(常用)
  • :q! 强制离开而不保存文件
  • :wq(:wq!)保存(强制保存)后离开
  • :w[filename]将编辑的数据保存为另一个文件(类似于另存文件)
  • :set nu 显示行号,在每一行的开始处显示行号
  • :seu nonu 取消行号

4. vim的“恢复”功能

像一般软件都会具有的恢复功能,vim通过保存一个暂存文件来实现这个功能。当我们在用vim编辑时,vim会在被编辑的文件目录下再新建一个名为.filename.swp的文件。如果你的系统因为某些原因断线了,导致你编辑的文件还没有保存,这个时候.swp文件就可以发挥它的救援功能了。

vim的语系编码转换:iconv -f 原本编码 -t 新编码 filename [-o newfile]

例如: iconv -f big5 -t utf8 vi.big5 -o vi.utf8 (将vi.big5转化为utf8编码)

vi - vim的一些遗忘点的更多相关文章

  1. Linux vi/vim(转载)

    Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主 ...

  2. vi/vim 的使用

    vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是一般模式.编辑模式与指令列命令模式. 这三种模式的作用分别是: 一般模式:以 vi 打开一个档案就直接进入一般模式了(这是默认的模式) ...

  3. 解决vi/vim中粘贴会在行首多很多缩进和空格的问题

    解决vi/vim中粘贴会在行首多很多缩进和空格的问题 secureCRT会将你原来的文本原封不动的按照字符串的样式发送给服务器.所以当你的服务器上的vim设置为autoindent的话,在i模式下,那 ...

  4. Linux下Vi/Vim使用笔记

    启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...

  5. vi/vim基本使用方法

    vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...

  6. Linux vi/vim

    所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...

  7. Linux上vi(vim)编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  8. 【转载】-- vi/vim使用

    vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...

  9. 小白学Linux(五)--VI/VIM编辑器

    我们操作文件,终究离不开编辑文件,对文件内容的编辑,Linux系统下,我们通常使用VI/VIM来编辑文件.VI是每个Linux都会自带的文本编辑器,VIM是VI的增强版,可能有些发行版本没有自带,可以 ...

随机推荐

  1. 通过ip地址访问同一局域网下已经启动的angular项目

    通常tomcat启动的项目同一局域网下我们都可以访问.angular启动的前台项目别人怎么访问,一直不懂,后来知道启动命令加个参数就行了 首先查看本机ip 第二步,启动命令里加上--host 本机ip ...

  2. textkit

    更详细的内容可以参考官方文档 <Text Programming Guide for iOS>. “Text Kit指的是UIKit框架中用于提供高质量排版服务的一些类和协议,它让程序能够 ...

  3. LeetCode47.Permutations II(剑指offer38-1)

    Given a collection of numbers that might contain duplicates, return all possible unique permutations ...

  4. C++声明之CV限定符

    目录 1.const 1.1 const obj 如果调用 non-const member fun会编译出错 经典错误 1.2 例子:STD里的操作符重载 1.3 例子:<cpp primer ...

  5. springMVC-数据绑定

    定义: 将http请求中参数绑定到Handler业务方法 常用数据绑定类型 1.  基本数据类型 不能为其它类型和null值 2.  包装类 可以为其它对象,全部转成null值 3.  数组 多个对象 ...

  6. PHP自动生成分页链接

    page.class.php <?php class Page { // 分页栏每页显示的页数 public $rollPage = 5; // 页数跳转时要带的参数 public $param ...

  7. ethereum(以太坊)(六)--整型(int)

    pragma solidity ^0.4.20; /* uint8 uint16 ...uint256 int8 int16 int24 ..int256 uint => uint256 int ...

  8. 创建数据库配置文件ini(转)

    一.有必要了解INI文件的结构: ;注释 [小节名] 关键字=值 ... ---- INI文件允许有多个小节,每个小节又允许有多个关键字, “=”后面是该关键字的值. ---- 值的类型有三种:字符串 ...

  9. 集合源码分析之 HashSet

    一 知识准备 HashSet 是Set接口的实现类,Set存在的最大意义区别于List就是,Set中存放的元素不能够重复,就是不能够有两个相同的元素存放在Set中,那么怎样的两个元素才算是相同的,这里 ...

  10. CodeForces 873F Forbidden Indices 后缀数组

    忘了当时怎么做的了,先把代码贴上,保存一下后缀数组模板. #include <cstdio> #include <cstring> #include <algorithm ...