Vi有三种模式,分别为命令行模式、一般模式和编辑模式。在命令行输入“Vi 文件名”,即可进入Vi。常用命令如下:
一.一般模式
翻页
[Ctrl]+[f]: 向下翻一页,相当于[Page Down]按键。
[Ctrl]+:向上翻一页,相当于[Page Up]按键。
[Ctrl]+[d]:向下翻半页。
[Ctrl]+:向上翻半页。

搜索与替换
/test:从光标处开始,向下寻找一个名为test的字符串。
?test: 从光标处开始,向上寻找一个名为test的字符串。
n:重复前一次搜索,即继续向下搜索下一处。
N:与n相反,反向进行前一个搜索,即向上搜索。
:n1、n2s/test1/test2/g:在n1行与n2行之间寻找test1这个字符串,并将其替换为test2。n1、n2均为数字。
:1、$s/test1/test2/gc:在第一行与最后一行之间寻找test1这个字符串,并将其替换为test2,每次替换前会询问是否替换。

删除、复制与粘贴
x、X:x为向后删除一个字符,X为向前删除。
nx:n为数字,连续向后删除n个字符。
dd:删除光标所在行。
ndd:n为数字,从光标位置开始,删除向下n行。
yy:复制光标所在行。
nyy:n为数字,复制光标所在向下n行。
p、P:p将已复制的数据粘贴到光标的下一行,P粘贴到上一行。
u:还原前一个操作,即撤销。

移动光标
n:n表示数字,按下数字后再按空格键,光标会向右移n个字符。
0:数字0,光标移到行首。
$:光标移到行末。
G:光标移到这个文件的最后一行。
nG:n为数字,光标移到文件的第n行。
h:光标左移一个字符。
l:光标右移一个字符。
j:光标下移一个字符。
k:光标上移一个字符。

二.编辑模式
按下列键可以进入编辑模式:i、I、a、A、o、O、r、R
i、I:i在当前光标所在处输入文字;I在当前所在行的第一个非空格符处插入。
a、A:a从当前光标所在的下一个字符处开始插入;A从光标所在行的最后一个字符处开始插入。
o、O:o在当前光标所在行的下一行处插入新的一行;O在当前光标所在处的上一行插入新的一行。
r、R:r替换光标所在的那一个字符;R会一直替换光标所在的文件,直到按[Esc]键为止。
Esc、Ctrl+C:退出编辑模式,回到一般模式。

三.命令行模式
:w:保存编辑过的数据到硬盘。
:W:强制保存,比如针对只读文件作修改想要保存时。
:q:退出vi。
:q!:不保存退出vi。
:wq:保存退出vi。
:e!:将文件还原到最原始的状态。
:w [filename]:另存为一个新的文件。
:r [filename]:读入另一个文件的内容。
:set nu:显示行号。
:set nonu:取消行号。

Vi命令详解的更多相关文章

  1. Linux——vi命令详解

    转载 Linux--vi命令详解   原文链接:https://blog.csdn.net/cyl101816/article/details/82026678 vi编辑器是所有Unix及Linux系 ...

  2. 转载:linux vi命令详解

    转自:http://www.cnblogs.com/mahang/archive/2011/09/01/2161672.html 刚开始学着用linux,对vi命令不是很熟,在网上转接了一篇. vi编 ...

  3. liunx下vi命令详解

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任何版本,vi编辑器是完全相 ...

  4. (转)Vi命令详解

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任何版本,vi编辑器是完全相 ...

  5. vi命令详解(转)

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任何版本,vi编辑器是完全相 ...

  6. linux vi命令详解

    刚开始学着用linux,对vi命令不是很熟,在网上转接了一篇. vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指 ...

  7. linux vi命令详解2

    刚开始学着用linux,对vi命令不是很熟,在网上转接了一篇. vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指 ...

  8. vim/vi 命令详解

    在工作中,要对服务器上的文件进行的修改,可以使用ssh远程登录到服务器上,并且使用vi进行快速的编辑即可,在没有图形界面的环境下,要编辑文件,vi是最佳选择! vi命令是Linux中最经典的文本编辑器 ...

  9. Linux/Mac vi命令详解

    刚开始学着用Linux,对vi命令不是很熟,在网上转接了一篇. vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指 ...

  10. linux文件编辑VI命令详解

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任何版本,vi编辑器是完全相 ...

随机推荐

  1. unity中的[xxxxxx]特性(Attributes)

    [SerializeField] 在Inspector版面中显示非public属性,并且序列化:若写在public前面,等于没写. [Obsolete("调用提示信息")] [No ...

  2. synaptics驱动,插入USB鼠标禁用触控板注册表

    Title:synaptics驱动,插入USB鼠标禁用触控板注册表 --2010-11-01 22:21 记得以前用过一个synaptics的驱动,自带有插入USB鼠标禁用触控板的选项的,有些没有自带 ...

  3. ural 1192 Ball in a Dream

    #include <cstdio> #include <cstring> #include <cmath> #include <algorithm> # ...

  4. webpy,希望能多了解一些关于WSGI,PYTHON的WEB开发框架的事,也希望能进一步了解PYTHON

    如果能真正看懂源代码,那就强了. 几年了,不应该总是小搞小打的. [Python]Webpy 源码学习(一) http://diaocow.iteye.com/blog/1922760 学习线路: 那 ...

  5. MFC动态创建按钮,并在按钮上实现位图的切换显示

    动态创建按钮,并在按钮中添加位图,通过单击按钮显示不同的位图,可设置为显示按钮按下和弹起两种状态.只要判断a值从而输入不同的响应代码. 1.在头文件中添加: CButton *pBtn; 2.在初始化 ...

  6. 通过Linux系统Cron执行OwnCloud计划任务

    通过Linux系统Cron执行OwnCloud计划任务 02/02/2013 CRON的确是一个非常有用的功能,它有效减少了系统的负载,在将WordPress和StatusNet的任务计划都转换到Cr ...

  7. Linux系统编程(26)——守护进程

    Linux系统启动时会启动很多系统服务进程,比如inetd,这些系统服务进程没有控制终端,不能直接和用户交互.其它进程都是在用户登录或运行程序时创建,在运行结束或用户注销时终止,但系统服务进程不受用户 ...

  8. 【转】android如何查看cpu的占用率和内存泄漏

    原文网址:http://www.cnblogs.com/yejiurui/p/3472765.html 在分析内存优化的过程中,其中一个最重要的是我们如何查看cpu的占用率和内存的占用率呢,这在一定程 ...

  9. 【转】锋狂百科:手机也能接外设 OTG技术详解

    原文网址:http://www.gfan.com/review/2014030346245.html 说到USB数据接口,相信大家并不陌生,在日常使用各类数码产品时我们几乎都会用到它.例如最常用的U盘 ...

  10. NOI2010 航空管制

    http://www.lydsy.com/JudgeOnline/problem.php?id=2535 贪心. 对于第1个问,我们先建立拓扑图,对于如果a必须在b前起飞,那么连有向边b->a, ...