以Tomcat的配置文件service.xml为例,记录、学习vi的最常用操作。

> 什么是vi or vim?

[nicchagil@localhost bak]$ man vi
VIM() VIM() NAME
vim - Vi IMproved, a programmers text editor ...

没错儿,程序员的文本编辑器。

> 打开、模式切换

vi server.xml

有两种模式,命令模式、输入模式

Esc    切换到命令模式(如果文档的最下方没有显示Insert字样,就是在命令模式;如果懒得看,就多按记下Esc确认下呗)。在命令模式中就可以执行各种各样的命令,比如拷贝、粘贴、移动光标等
i     切换到插入模式,以i进入即在当前光标前填入键入的文字(insert)
a     切换到插入模式,以i进入即在当前光标后填入键入的文字(add) o     当前行下添加一个空行,并将光标切换到下一行
O     当前行上添加一个空行,并将光标切换到上一行

> 保存、关闭文档

:w   保存文档
:q   退出编辑 :wq 保存后退出编辑文档
:q! 强制退出编辑(有时候文档作了改动,希望不保存就退出编辑,即用此命令)

> 移动光标

hjkl就四个按键在键盘上是一起的,他们用来控制光标的左、下、上、右。
h 向左移动一个字符。它位于四个键的最左边,当让控制想左移动了
l 向右移动一个字符。与h同理,位于最右边嘛
j 移动到下面一行。有木有看到j上面有个凹凸位,有木有留意到j位于键盘最佳、最方便的位置。而向下移动也是编辑文档最频繁的动作,当然由非j莫属了
k 向上移动一行。在j的旁边,当然负责向上移动一行了 0  光标切换到当前行第一个字符
$  光标切换到当前行最后一个字符
G  光标移动到文档最尾部 Ctrl + f  向下滚动一页(Forward)
Ctrl + b  向上滚动一页(Back)

> 复制、粘贴

yy    复制当前行
nyy 复制光标以下的n行(含光标所在行) yw 复制单词
nyl 复制含光标在内的n个字母 p 在光标前粘贴(如复制行,则在光标下一行粘贴 )
P 在光标后粘贴(如复制行,则在光标上一行粘贴 )

> 删除

x     删除当前字符
dd 删除当前行

> 显示行号

:set nu

【Linux】vi(vim)起步学起来有些困难,一步一步温习的更多相关文章

  1. Linux vi/vim(转载)

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

  2. Linux 磁盘管理,Linux vi/vim

    一.Linux 磁盘管理 Linux磁盘管理好坏直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 ...

  3. 十、Linux vi/vim

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

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

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

  5. linux vi/vim 编辑器学习总结

    linux vi/vim 编辑器学习总结 很多时候我们开发人员不可避免的会涉及到项目部署,这个时候使用的就不是我们所熟知的 Windows 和 Mac OS 操作系统了,而是类 Unix 系统.项目部 ...

  6. Linux vi/vim命令

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

  7. Linux vi/vim and linux yum 命令

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

  8. 吴裕雄--天生自然Linux操作系统:Linux vi/vim

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

  9. Linux vi/vim

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

随机推荐

  1. springday03-go2

    新建springmvc01项目1.创建项目,导入jar包 拷贝jar/spring/first下的五个spring的jar包,以及jar/spring/mvc下的两个mvcjar包放在lib下 2.创 ...

  2. Openssl生成根证书、服务器证书并签核证书

    1.修改Openssl配置文件CA目录: cat /etc/pki/tls/openssl.cnf dir = /etc/pki/CA 2.生成根证书及私钥: #http://www.haiyun.m ...

  3. C 排序法

    1.冒泡法,相邻的两个数值,进行比较,满足条件的进行互换 #include <stdio.h> int main() { int index, j, tmp; , , ,}; ; inde ...

  4. WM (Constants)

    Create page WM (Constants)   Summary WM_* Constants and their definitions or descriptions and what c ...

  5. 移动widget开发

    发现Oracle----php连接有很多bug无法解决,只好转向php--连接mysql数据库,并装载了mysql两个文件,跟客户端NAVICAT_FOR_MYSQL,然后直接建表,用于测试,能够连通 ...

  6. springmvcの神总结のreadme

    ********李守宏springmvc******** 3.== --\springmvc一个controller实现多个方法 ----\继承MultiActionController ----\配 ...

  7. Sql Server Analysis Service 转换为UnknownMember的正确设置

    在SSAS中事实表数据被归类到为UnknownMember 的时候分为两种情况: 第一种情况,在SSAS里面事实表中的外键是null,这种情况SSAS在建事实表和维度时ErrorConfigurati ...

  8. ASP.NET MVC下的四种验证编程方式[续篇]【转】

    在<ASP.NET MVC下的四种验证编程方式> 一文中我们介绍了ASP.NET MVC支持的四种服务端验证的编程方式(“手工验证”.“标注ValidationAttribute特性”.“ ...

  9. GCD 多线程 初探

    GCD编程的核心就是dispatch队列,dispatch block的执行最终都会放进某个队列中去进行,它类似NSOperationQueue但更复杂也更强大,并且可以嵌套使用.所以说,结合bloc ...

  10. PHP正则表达式之定界符和原子介绍

    1,正则表达式的定界符. 除了字母.数字和反斜线\以外的任何字符都可以为定界符号,比如 | |.//.{}.!!等等,但是需要注意,如果没有特殊需要,我们都使用正斜线//作为正则表达式的定界符号. 2 ...