Vi/Vim文本编辑器

Vi/Vim是Linux自带的一个功能非常强大的文本编辑器,可以用来创建,编辑和显示文本文件。

Vi/Vim工作模式

  • 命令模式:使用vi file_namevim file_name进入后的模式,此模式下不可编辑。
  • 插入模式:在命令模式下使用iao指令,进入插入模式,可以编辑文件。
  • 编辑模式:在命令模式下使用:指令,进入编辑模式,可以输入vim编辑器指令。
    工作模式如下图所示:

插入模式

在进入命令模式后,可以通过iao任意一个命令进入编辑模式。但是,这三个命令又有所不同。

命令 作用
a 在光标后附加文本
A 在本行行末附加文本
i 在光标前附加文本
I 在本行开始处附加文本
o 另起一行插入
O 在光标上启一行插入

如下图所示,在输入O之后,光标出现在了上一行。


定位命令

  • set number:设置行号(set nu)
  • set nonu:取消行号
    在vim中没有展示行号,我们在编辑的时候,可以通过使用上述两个指令来展示和取消行号。


命令 作用
h, 方向左 左移一个字符
j,方向下 向下移动一个字符
k,方向上 向上移动一个字符
l,方向右 右移动一个字符
$ 移动到行尾
0 移到行首
H 移至屏幕上端
M 移至屏幕中央
L 移至屏幕下端

删除命令

  • x 删除光标所在位置字符
  • nx 删除光标位置后n个字符
  • dd 删除所在行
  • ndd 删除n行
  • dG 删除从光标所在位置到文件末尾的内容
  • D 删除光标所在处到行尾
  • :n1, n2d 删除指定范围的行,从n1到n2。

复制和粘贴

命令 作用
yy, Y 复制当前行
nyy, nY 复制当前行一下n行
dd 剪切当前行
ndd 剪切当前行以下n行
p, P 粘贴在当前光标所在行的上一行或下一行

替换,搜索

命令 作用
r 取代光标所在处字符
R 从光标所在处开始替换字符,ESC结束
u 取消上一步操作
/string 向前搜索指定字符,如果想要忽略大小写使用:set ic
n 搜索指定字符串的下一个出现位置
:%s/old/new/g 全文替换指定字符串
:n1,n2s/old/new/g 在一定范围内替换指定字符串
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容