Linux操作系统的VI命令
Linux操作系统的VI命令
VI是Linux系统的一个文本编辑器,该编辑器可以通过使用VI命令来操作,从而完成对文本的编辑。熟练掌握一些常用的VI命令,可以大大简化编辑操作并提高操作Linux文本的效率 。
使用VI命令编辑文本时,有三种编辑模式——命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)。
(一)命令模式
命令模式可以在文本中快速定位光标在指定区域、执行复制和粘贴操作、执行删除操作等。
①光标移动
|
命令 |
描述 |
|
命令 |
描述 |
|
0 |
光标定位到开头位置 |
G |
光标定位到结束位置 |
|
|
^ |
光标定位行首 |
$ |
光标定位行尾 |
|
|
Ctrl+f |
光标定位到上一页 |
Ctrl+b |
光标定位到下一页 |
|
|
Ctrl+d |
光标定位到上半页 |
Ctrl+u |
光标定位到下半页 |
|
|
[n]l |
光标定位到行的第n格 |
[n]G |
光标定位到第n行 |
|
|
h、j、k、l |
光标向左、下、上、右移一格 |
|||
②删除文本
|
命 令 |
描 述 |
|
命 令 |
描 述 |
|
x |
删除光标后一个字符 |
[n]x |
删除光标后n个字符 |
|
|
X |
删除光标前一个字符 |
[n]X |
删除光标前n个字符 |
|
|
dd |
删除当前行 |
[n]dd |
向下删除n行 |
|
|
dG |
向下删除到最后一行 |
dw |
删除当前的单词 |
|
|
d0 |
删除光标至行首 |
d$ |
删除光标至行尾 |
③删除、复制、粘贴、查找、替换、撤销
|
命令 |
描述 |
|
命令 |
描述 |
|
yy |
复制当前行 |
[n]yy |
向下复制n行 |
|
|
dd |
删除当前行 |
[n]dd |
向下删除n行 |
|
|
dG |
向下删除到最后一行 |
dw |
删除当前的单词 |
|
|
d0 |
删除光标至行首 |
d$ |
删除光标至行尾 |
|
|
r |
替换光标处的字符 |
R |
替换光标所到处的字符(按ESC键结束) |
|
|
p |
在下一行位置粘贴内容 |
/[关键字]、?[关键字] |
查找关键字(按n查找下一个) |
|
|
u |
撤销操作 |
ctrl+r |
反撤销操作 |
(二)插入模式
插入模式可以移动和定位光标(小范围定位)、自由输入文本、替换文本等。
|
命令 |
描述 |
|
命令 |
描述 |
|
i |
光标之前输入 |
I |
光标定位到行首 |
|
|
a |
光标之后输入 |
A |
光标定位到行尾 |
|
|
o |
光标定位到下一行开头 |
O |
光标定位到上一行开头 |
|
|
s |
替换光标位置的字符 |
S |
替换光标位置的行 |
(三)底行模式
底行模式可以查找文本、定位光标(通过查找)和保存文件等。
|
命 令 |
描 述 |
|
命 令 |
描 述 |
|
:w |
保存文件 |
:q |
退出编辑器 |
|
|
:q! |
强制退出编辑器 |
:wq |
保存文件并退出编辑器 |
|
|
:set nu |
列出行号 |
/[关键字] |
查找关键字(按n查找下一个) |
注意:在底行模式下的命令,需要按回车键才执行该命令。
(四)切换模式
VI编辑器的3种模式实现了不同功能的操作,在某个模式下,需要切换到另一个模式,可以按图示操作。

实现以上过程的命令:
过程①:输入vi [文件名],按回车键执行该命令,进入命令模式;
过程②:按a、i、o或s键,实现命令模式——>插入模式;
过程③:按Esc键,实现插入模式——>命令模式;
过程④:输入:或 /,实现命令模式——>底行模式;
过程⑤:按Esc键、连按Esc键2次或删除全部底行内容,实现底行模式 ——>命令模式;
过程⑥:输入:q、:q!或:wq,按回车键执行该命令,从命令模式退出。
———————————————————————————————————————————————————————————————————
The end @ 万有引力+
-
-
-
-
-
Linux操作系统的VI命令的更多相关文章
- linux下vi命令大全
进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首 ...
- Linux下VI命令详细介绍
vi 是"Visual Interface" 的简称,它在Linux 上的地位就仿佛Edit 程序在DOS上一样.它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且 ...
- (转)linux下vi命令大全
http://www.cnblogs.com/88999660/articles/1581524.html 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n ...
- linux下vi命令大全[转]
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
- 介绍linux下vi命令的使用
功能最强大的编辑器之一——vivi是所有UNIX系统都会提供的屏幕编辑器,它提供了一个视窗设备,通过它可以编辑文件.当然,对UNIX系统略有所知的人,或多或少都觉得vi超级难用,但vi是最基本的编辑器 ...
- linux下vi命令的使用
linux vi命令详解 刚开始学着用linux,对vi命令不是很熟,在网上转接了一篇. vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单 ...
- linux下vi命令大全(转载)
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
- 【linux】linux下vi命令的使用
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
- linux下vi命令(转)
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
随机推荐
- HTML个人简介
<!doctype html><html lang="en"> <head> <meta charset="UTF-8" ...
- JDK丨WIN10配置JDK1.8 (解决javac不是内部或外部命令,也不是可运行的程序或批处理文件)
1.下载JDK,安装. 2.配置JDK. (右键我的电脑 - 属性 - 高级系统设置 - 环境变量.) 2.1 添加系统变量JAVA_HOME 变量名:JAVA_HOME 变量值:C:\Program ...
- java项目的异常处理
异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error:如果你用System.ou ...
- CentOS安装PHP7.*
安装 如之前安装过PHP,则先卸载 $ yum -y remove php* 由于linux的yum源不存在php7.x,所以我们要更改yum源 $ rpm -Uvh https://dl.fedor ...
- 命名空间"xx"已经包含了"xx"的定义
例: namespace A.B { public class C { } } 注:重名的不仅仅是类,还可以结构,枚举,命名空间本身也有可能重复. 这个类C若与命名 ...
- 压力(性能)测试及jmeter的使用
github中标注lab3的文档记录了我的详细的实验过程,有关环境搭建.过程理解.实验结果与遇到的问题等,希望可以帮到初学者. 欢迎交流- https://github.com/fogmisty/So ...
- Vue2.0 入门 安装Vue-cli
因为要用到npm命令先按装node.js 具体安装如下: 一.安装Node.js步骤 1.下载对应你系统的Node.js版本:https://nodejs.org/en/download/2.选安装目 ...
- (转)MERGE语法详解
merge语法是根据源表对目标表进行匹配查询,匹配成功时更新,不成功时插入. 其基本语法规则是 merge into 目标表 a using 源表 b on(a.条件字段1=b.条件字段1 and a ...
- 使用PHP实现RSA算法的加密和解密
本文提供使用RSA算法加密解密数据的PHP程序类(签名和验签的实现方式可以查看使用PHP实现RSA算法的签名和验签 这篇文章),封装了格式化公钥和私钥文件的方法,这样无论使用什么格式的公钥或者私钥都可 ...
- Android-Gradle(五)
Android studio不仅允许你为你的app和依赖库创建模块,同时也可为Android wear,Android TV,Google App Engine等创建模块,而这些单独的模块又可以在一个 ...