Linux基础笔记13 | vim 编辑器详解

vim是vi编辑器的增强版,三种模式:普通模式、插入模式、命令模式

用法:vim 文件名 (文件存在,则显示相关文件内容;文件不存在,则新建,如果未键入内容,退出后不会新建新文件)

普通模式

vim 直接打开一个文件后默认进入普通模式

  • 普通模式可操作相关按键进入插入模式:
按键说明
a光标后面插入后续输入的内容
A光标所在段落的段尾插入后续输入的内容
i光标前面插入后续输入的内容
I光标所在段落的段首插入后续输入的内容
o光标所在行的后面创建新的空白行,插入后续输入的内容
O光标所在行的前面创建新的空白行,插入后续输入的内容
  • 普通模式下的光标操作:

方向键(上下左右、hjkl)是最基本的光标操作

快捷键说明
gg光标至文件首
G光标至文件尾
nG光标至第n行
^光标至行首
$光标至行尾
fx光标至行的下一个x字符处
Fx光标至行的上一个x字符处
W光标向右移动一个单词
nw光标向右移动n个单词
b光标向左移动一个单词
nb光标向左移动n个单词
  • 普通模式下编辑文件操作
快捷键说明
x删除光标当前字符
dd删除当前行
ndd向下删除当前n行
d$删除光标至行尾的内容
J删除换行符,合并上下文
u撤销上一步操作,可多次使用
rx光标所在字符替换为x,x为单个字符
yy复制光标当前行
p(小写)粘贴至光标当前行之后
P(大写)粘贴至光标当前行之前
ZZ保存并退出
  • 普通模式下的查找

普通模式下键入"/"关键词进入查找

小写n跳转下一个匹配的关键词处;大写N跳转至上一个匹配的关键词处。

插入模式

若不知自己当前处于什么模式时,可通过Esc返回普通模式,再由普通模式键入相关快捷键进入插入模式,进行后续的输入

命令模式

在普通模式下,键入冒号":"进入命令模式

  • 替换功能
instructionsdescribe
: s/vm01/vm02/光标当前行第一个出现的vm01替换成vm02,没有则不替换
: s/vm01/vm02/g光标当前行所有出现的vm01替换成vm02,没有则不替换
: 3,5 s/vm01/vm02/g3到5行所有出现的vm01替换成vm02,没有则不替换
: % s/vm01/vm02/g将所有行的vm01都替换成vm02
  • 保存与退出
instructionsdescribe
:q!不保存并强制退出
:wq保存并退出
:x保存并退出
:w保存
:w test.txt另存为test.txt

vim常见设置

instructionsdescribe
:set nu显示行号
:set nonu取消显示行号
:set ignorecase查询忽略大小写
:split test.txt另起窗口编辑test.txt文件:水平分割
:vsplit test.txt另起窗口编辑test.txt文件:垂直分割
:close关闭当前编辑的窗口
:shell进入shell命令行进行操作,命令行键入exit可返回编辑窗口
:nohl取消高亮显示

区块模式及其他实践

区块模式的进入方法:vim 普通模式下,键入 Ctrl+v 进入块选择模式

在这里插入图片描述

多行注释

  • 进入区块模式后,选中需要注释的多行(左右上下调整行的宽度和行数)

在这里插入图片描述

  • 大写状态下键入“i”:进入插入模式

在这里插入图片描述

  • 输入注释符号:“#”

在这里插入图片描述

  • 输入后键入“Esc”,即可实现多行注释:会自动将“#”添加到其他选中的行

取消多行注释(删除)

  • 进入区块模式后,选中需要取消注释的行(左右上下调整行的宽度和行数)

在这里插入图片描述

  • 键入小写的“d”即可删除选中的“#”号,完成取消注释

在这里插入图片描述

多行复制

如何将一个文本的其他内容复制到其他地方区,比如:我要将 nginx 的配置文件里面的 server 块再复制一份出来,鼠标操作也不好操作,只能通过键盘操作,应该如何实现呢

在这里插入图片描述

  • 先设置显示行号:set nu,就是要将38行到54行的内容复制到55行即可

在这里插入图片描述

  • 命令模式下:38,54 copy 55 (见是直接复制在55行的下一行)

在这里插入图片描述

  • 也可以使用move 进行移动操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值