之所以要学习vi,是因为公司的unix服务器只支持vi.个人觉得理解了vi的工作方式,即可基本掌握如何使用vi,而不需要记忆太多的东西.
vi的模式
学习vi,最重要的事情是理解vi的模式,以及各个模式下面都能进行哪些操作.想得简单一点,我们可以把vi理解成两种模式即插入模式与命令行模式:
- 插入模式(Insert Mode):在插入模式下面只能进行文本插入(输入)操作,而且在插入模式下,是不能通过键盘上的上下左右箭头键移动光标的.这一点往往是新手刚进行vi操作的时候最懊恼的事情.想象自己刚刚在vi上成功输入几个字符之后,若想像windows一样,移动光标(通过上下左右键)到别处去,在vi上是行不通的,最终会导致插入一些意外的字符.这时,我们就需要按ESC键进入命令行模式.最后注意在插入模式下Backspace键是不能删除字符的,但是回车跟空格是有效的
- 命令行模式(Command Mode):在命令行模式下,我们可以进行光标移动,数据删除,数据复制,粘贴.我们可以在命令行模式下通过a,A, i,I,o,O命令进入插入模式.最后在命令行下可以通过:wq!之类的命令进行强制保存(底行模式)
对于一个新手来说做常做的事情是编辑文本,进行插入操作/删除操作.所以就需要不断地在两种模式之间进行切换[ESC, a, i, o]以及内容删除[dd,x,X],所以每当你搞不清楚处于何种模式,或者误插入了你不想要字符的时候,你只要按ESC,就会进入命令行模式,便可以把刚才的误操作给删除掉. 如后再按[a,o,i]进入插入模式,进行文本插入操作.
在理解了vi的运行方式之后,我们就可以进行基本的文件编辑工作.再接下去的事情,无非是多记住一些在各种模式下面的常用命令,让我们更好地使用vi.
vi常用命令
1.命令行模式下光标移动:
- h(左),j(下),k(上),l(右)以及方向键:上下左右移动光标
- 0与$:移动到行开头与结尾
- G:移动到文件最后一行
- 20G:移动到文件第20行
- 20[space]:向右移动20个字符
- 20[Enter]:光标向下移动20行
2.命令行下查找与替换
- /string: 向下查找, 按n查找下一个, N查找上一个,这个跟less命令的查找使用方式是一样的
- ?string:往前查找, 按n查找下一个, N查找上一个
- :1,$s/src/dest/g 从第一行到最后一行替换src为dest,$代表结尾
- :1,$s/src/dest/g 从第一行到最后一行替换src为dest,并且每次替换前就行确认
- :n1,n2s/src/dest/g 从第一行到最后一行替换src为dest
3.命令行下删除复制粘贴:
- x,X:向前,向后删除一个字符,前面可以加数目
- d0与d$:删除光标到行第一个字符/最后一个字符
- dd: 删除整行, 加数字代表删除向下n行
- yy:复制所在行,加数字代表复制向下n行
- y0与y$: 复制光标到行头/行尾
- p:从光标下一行开始粘贴, P的话是从粘贴到光标所在的上一行
4.命令行模式进入插入模式
- i:光标处插入,之前光标选中的字符会后移
- 大写i:所在行第一个非空字符处插入
- a:光标所在下一个字符插入,类似i
- 大写A:所在行最后一个字符插入
- o与O:光标所在行上/下一行插入新的一行
5.命令行模式进行保存
- :q! 强制离开不保存
- :wq! 强制保存后离开
- :q 离开,保存否???
6.命令行下其他操作
- u: 撤销上一个操作,只能撤销最近一次,再撤销,又回去了..会不断循环
- [ctrl]+r: 重做上一次操作
- . 就是小数点那个:重复前一个操作,不知道跟Ctrl+r有什么区别
相关推荐
### Unix系统常用命令总结 Unix系统作为现代操作系统的基础之一,其强大的命令行工具为用户提供了高效的操作环境。本文将从给定的文件信息出发,深入探讨Unix系统中的常用命令及其应用,同时也会提及C++编程在Unix...
`vi`(Visual Editor)是UNIX系统下最常用的文本编辑器之一,其功能强大且高效。在UNIX系统中,除了`vi`之外,还有`ex`和`sed`等编辑器,但`vi`因其直观的操作界面和丰富的命令集而成为最受欢迎的选择。`vi`不仅适用...
在《UNIX下常用命令》这份资料中,详细介绍了UNIX和Linux环境下的基本命令与操作,这对于初学者乃至有经验的用户来说都是极其宝贵的资源。下面,我们将根据这份文档的内容,深入探讨UNIX下的一些核心概念和常用命令...
### Linux VI/VIM 编辑器常用命令详解 在 Linux 和 Unix 类系统中,VI(Visual Editor)编辑器是标准的文本编辑工具,而 VIM(VI Improved)则是其增强版,提供了更多功能和改进。VI/VIM 编辑器因其高效、功能强大...
### Unix常用命令总结 #### 课程目标概览 根据给定文档中的信息,这份文档主要介绍了在Unix系统中常用的命令及其应用。以下是该文档中提到的主要知识点: 1. **登录和退出Solaris系统** - 包括了两种登录方式:...
【VI常用使用方法总结】 VI,全称visual,是一款经典的UNIX环境下的文本编辑工具,它以其高效和灵活性深受程序员和系统管理员的喜爱。在VI中,编辑过程涉及三种主要模式:一般模式、编辑模式和指令模式。 1. **...
以上总结了Vi编辑器中的常用命令,这些命令可以帮助用户更高效地进行文本编辑操作。无论是对于初学者还是有经验的用户来说,掌握这些命令都是非常有帮助的。通过灵活运用这些命令,可以极大地提高文本编辑效率。
vi编辑器是UNIX和Linux系统中最常用的文本编辑工具之一,其命令繁多但功能强大,这里总结一些常用命令帮助理解和使用。 一、插入命令 在vi中可以使用以下命令在特定位置新增资料: - o: 在当前光标所在行下方新增...
以上介绍了Linux VI编辑器的基础操作及其命令模式下的常用命令。熟悉这些基本操作可以帮助用户更高效地使用VI进行文本编辑工作。虽然初学者可能会觉得VI有些难以掌握,但一旦熟练使用后,你会发现它的强大和便捷性。
VI编辑器,全称为"Visual Interface",是Unix操作系统中的标准文本编辑器,而在Linux系统中,我们使用的是它的增强版VIM(Vi IMproved)。VIM与VI完全兼容,支持丰富的文本操作功能,包括输出、删除、查找、替换以及...
它在Linux和Unix系统中广泛使用,尽管在图形界面普及的今天,许多用户可能更倾向于使用GUI文本编辑器,但`vi`因其高效性和灵活性仍然受到很多程序员和系统的管理员的喜爱。本文将详细梳理`vi`的一些常用编辑命令,...
以下是一些常用的UNIX命令,这些命令同样适用于大多数Linux发行版。 1. **ls**:用于列出目录中的文件和子目录。通过添加参数如`-l`(长格式)和`-a`(显示隐藏文件),可以获取更详细的信息。 2. **cd**:改变...
Vi(Visual Editor)是一种功能强大的文本编辑器,广泛应用于各种Unix系统以及类Unix系统(如Linux)中。它具有多种模式,包括命令模式、插入模式和末行模式等,用户可以根据实际需求在不同模式之间进行切换,以实现...
VI/VIM是一款非常强大的文本编辑器,在Linux和其他类Unix系统中广泛使用。启动VI/VIM的方式多种多样,可以根据不同的需求选择合适的启动方法。 ##### 启动命令及功能: - `vi filename`:从文件的第一行开始进行...
Vi编辑器是Unix及类Unix操作系统(包括Linux)中广泛使用的文本编辑工具。Vi编辑器具备强大的功能和丰富的命令集,适用于从简单的文本编辑到复杂的脚本编写等多种场景。本文旨在详细介绍Vi编辑器的基本操作、光标...
### Unix Vi 编辑器完全使用手册 #### 一、Vi 编辑器简介 Vi 编辑器是 Unix 系统中一个非常强大的文本编辑工具。它最初由 Bill Joy 在 1976 年为 BSD 版本的 Unix 开发,并逐渐成为大多数 Unix 和类 Unix 系统的...
vi 编辑器是 Unix 操作系统中最常用的文本编辑器之一,对软件开发来说,工具并非关键的问题,但工具的使用对提高效率的作用是无可置疑的。下面是 vi 使用操作总结,包括常用设置、光标移动、文本修改和删除、文件间...
以下是对标题和描述中提到的一些Unix常用命令的详细说明: 1. **ls**:`ls`命令用于列出目录中的文件和子目录。不同的选项可以提供不同的输出格式: - `-R` 递归列出所有子目录的内容。 - `-a` 显示包括隐藏文件...
根据给定文件的信息,我们可以总结出关于 Linux 下的 vi 编辑器以及 gcc 编译器的一些关键知识点。 ### 一、vi 编辑器 #### 1. vi 编辑器模式 vi 编辑器有三种主要的工作模式: - **命令模式(Command Mode)**:...
本文档将介绍VI的四种主要模式、常用命令以及如何同时编辑多个文件,帮助用户更好地掌握这个强大的工具。 ### 1. VI的模式 VI编辑器有四种模式: 1. **一般模式**:进入VI后的默认模式。在此模式下,你可以移动...