资讯专栏INFORMATION COLUMN

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

G9YH / 1593人阅读

摘要:写在前面作为常年与服务器打交道的后端开发,基本的操作是一定要运用非常熟练的本篇文章就记录了一些日常工作中最常用的的指令,希望能和大家共同学习共同进步一与的区别是的升级版本,它兼容的所有指令,并提供一些新特性,如以不同颜色标识语法等之后会总结

写在前面:作为常年与服务器、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://www.ucloud.cn/yun/25009.html

相关文章

发表评论

0条评论

最新活动
阅读需要支付1元查看
<