vim编辑器是vi编辑器的升级版。

如果我们希望在/tmp/目录中建立一个名为test.txt的文件并写入hello这几个字母,在上一节中,我们了解到使用echo命令去实现这样的需求

echo "hello" > test.txt

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_命令模式

实际中,在linux中使用更多的是vim编辑器。

vim基本用法

编辑test.txt。

vim test.txt

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_命令模式_02

按下键盘的”i”键,界面左下角显示insert,进入输入模式,表明可以输入。

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_vim编辑器_03

输入完成后按esc键回到命令模式。

如果需要保存并退出,按“:”键,输入wq。

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_vim_04

使用cat检查是否写入

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_输入模式_05

:wq 保存退出
:q! 退出不保存
:set nu 显示行号
:set nonu //取消显示行号
% s/l/x/g 把所有的l替换成x

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_输入模式_06

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_输入模式_07

以上是vim最基本最基本的操作了。如果只是需要对文件进行修改或者查看,掌握上面的内容就足够了,如果还希望掌握一些更进阶的内容,则可以接着往下看。

vim三种状态切换

vim 共分为三种模式,分别是

  • 命令模式(Command mode)
  • 输入模式(Insert mode)
  • 末行模式(Last line mode)

它们的切换方式如下图

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_搜索_08

命令模式

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

i 切换到输入模式,以输入字符。
a //在当前光标位置的右边添加文本
i //在当前光标位置的左边添加文本
A //在当前行的末尾位置添加文本
I //在当前行的开始处添加文本(非空字符的行首)
O //在当前行的上面新建一行
o //在当前行的下面新建一行
R //替换(覆盖)当前光标位置及后面的若干文本
J //合并光标所在行及下一行为一行(依然在命令模式)
x 删除当前光标所在处的字符。
nx //删除从光标开始的n个字符
dd 删除当前行
ndd //向下删除当前行在内的n行
u //撤销上一步操作
U //撤销对当前行的所有操作
2yy 复制当前行以及下一行
10yy 复制当前行以及下十行
p 粘贴到当前行
gg 快速回到第一行
G 快速回到最后一行
:10,20d 删除第10行到第20行
50G 快速回到第50行
/vpser //向光标下搜索vpser字符串
?vpser //向光标上搜索vpser字符串
n //向下搜索前一个搜素动作
N //向上搜索前一个搜索动作
n+ //向下跳n行
n- //向上跳n行
nG //跳到行号为n的行
G //跳至文件的底部

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。输入“:” 切换到末行模式,以在最底一行输入命令。

输入模式

命令模式只有一些最基本的命令,因此仍要依靠末行模式输入更多命令。

字符按键以及Shift组合,输入字符
ENTER,回车键,换行
BACK SPACE,退格键,删除光标前一个字符
DEL,删除键,删除光标后一个字符
方向键,在文本中移动光标
HOME/END,移动光标到行首/行尾
Page Up/Page Down,上/下翻页
Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
ESC,退出输入模式,切换到命令模式

末行模式

在命令模式下按下:(英文冒号)就进入了末行模式。

末行模式可以输入单个或多个字符的命令,可用的命令非常多。

在末行模式中,基本的命令有:

:q 退出程序 
:w 保存文件
:wq 保存并退出
:q! 退出不保存
:w test.txt 保存至test.txt文件
:set fileformat=unix //将文件修改为unix格式

按ESC键可随时退出底线命令模式。

关于本文所用到的工具,欢迎关注我的公众号:旁骛OtherThing,回复工具获取。

#yyds干货盘点# web安全day23:vim软件的最基本最常用操作_vim_09