RD基本功——Vi基础与最常用指令

Posted leeon_l

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RD基本功——Vi基础与最常用指令相关的知识,希望对你有一定的参考价值。

写在前面:作为常年与服务器、Linux打交道的后端开发RD,基本的vi操作是一定要运用非常熟练的;本篇文章就记录了一些日常工作中最常用的的指令,希望能和大家共同学习共同进步;

一、vi与vim的区别
vim是vi的升级版本,它兼容vi的所有指令,并提供一些新特性,如以不同颜色标识语法等;(之后会总结一些vim的常用功能~)

二、vi的三种模式

模式功能
一般模式通过vi打开文件后的默认模式,在此模式下可以方便地移动光标,执行复制、剪切、删除、粘贴等操作;
编辑模式在一般模式按下【i、I、o、O、a、A、r、R】等字符即可进入编辑模式(最常使用【i】在光标处开始编辑、【o】在光标下一行插入新行,并跳转至新行开始编辑),编辑模式下可以编辑文件,按下【ESC】可退出到一般模式;
命令行模式在一般模式按下【:、/、?】字符即可进入命令行模式,命令行模式下可以保存修改、离开vi、查找字符、替换字符,按下【ESC】可退出到一般模式;

三、最常用指令

1、移动指令

指令功能简介编者按
k/j/h/l上下左右移动光标一般模式下,可以使用【k/j/h/l】代替方向键上下左右移动光标,多次相同移动指令可使用数字+指令执行,如【30j】即代表向下移动光标30次;刚开始使用这四个键会很难记、很不适应,但习惯后的确会更方便、更极致;
Ctrl+f向下翻页一般模式下,可以使用组合键【Ctrl+f】向下翻页;适用于vi浏览多页数据
Ctrl+b向上翻页一般模式下,可以使用组合键【Ctrl+b】向上翻页;适用于vi浏览多页数据
0移动光标到行首一般模式下,可以使用数字【0】移动光标到行首;非常常用;
$移动光标到行尾一般模式下,可以使用符号【$】移动光标到行尾;非常常用;
G移动光标到文件最后一行一般模式下,可以使用大写字母【G】移动光标到文件最后一行,【nG】代表移动光标到文件的第n行;非常常用,比如直接跳到日志文件末尾查看最新的日志;
gg移动光标到文件第一行一般模式下,可以使用【gg】移动到文件第一行;非常常用;

2、查找替换指令

指令功能简介编者按
/关键字从光标位置向下查找关键字一般模式下,可以通过符号【/】进入命令行模式,再键入要查找的关键字,按下【回车】即可自动将光标移动到向下第一个关键字处;结合【n】沿之前方向继续查找(此处为继续向下)、【N】沿之前反向继续查找(此处为继续向上);非常常用,比如通过关键字查找日志;
?关键字从光标位置向上查找关键字一般模式下,可以通过符号【?】进入命令行模式,再键入要查找的关键字,按下【回车】即可自动将光标移动到向上第一个关键字处;结合【n】沿之前方向继续查找(此处为继续向上)、【N】沿之前反向继续查找(此处为继续向下);
:1,$s/word1/word2/gc从第一行到最后一行查找word1并替换为word2,并在替换前提示用户确认一般模式下,可以通过符号【:】进入命令行模式,再键入【1, 】 代 表 从 第 一 行 到 最 后 一 行 , 也可以用具体的行号代替,最后的参数【c】代表替换前提示用户确认;一般来说,除非确认要全局替换的情况,还是推荐加上参数【c】确保替换无误;

3、剪切、删除、复制、粘贴指令

指令功能简介编者按
x删除(剪切)光标位置处的字符在一般模式下,可以使用小写字母【x】代替【Del】删除(剪切)光标位置的字符;非常常用,较使用【Del】更方便;在vi指令中,删除一般都可以做为剪切使用;
dd删除(剪切)光标所在行在一般模式下,可以使用【dd】删除(剪切)光标所在行操作;可使用【ndd】删除连续的n行;非常常用;
yy复制光标所在行在一般模式下,可以使用【yy】复制光标所在行;可使用【nyy】复制连续的n行;非常常用;
p将已复制的数据粘贴在光标下一行在一般模式下,可以使用【p】将已复制的数据粘贴在光标下一行;非常常用;

4、重复操作与撤销操作指令

指令功能简介编者按
u撤销前一个操作在一般模式下,可使用【u】撤销之前的操作非常常用;
Ctrl+r恢复前一个被撤销的操作在一般模式下,可以使用【Ctrl+r】恢复【u】撤销的操作【u】的反向操作;
.重复之前的操作在一般模式下,使用符号【.】可以方便地重复之前的删除、粘贴操作非常常用;

5、命令行模式常用指令

指令功能
:w保存文件
:q退出文件
:wq保存并退出文件
:q!强制退出,不保存
:set nu设置行号
:set nonu取消设置行号
:数字移动光标到第n行

博客搬家:https://segmentfault.com/blog/leeonfancy

以上是关于RD基本功——Vi基础与最常用指令的主要内容,如果未能解决你的问题,请参考以下文章

vi编辑器的使用

Linux基础基本命令

Linux基础(03)常用基础指令和操作

盘点那些常用的Linux指令

cmake --- 常用基础指令简介

cmake常用基础指令讲解