Linux-VI和VIM

目录

VI的使用

VI的三种模式

进入VI

[切换至插入模式(Insert mode)编辑文件](#切换至插入模式(Insert mode)编辑文件)

[Insert 的切换](#Insert 的切换)

退出VI及保存文件

搜索

快捷删除

光标定位到最后一行

VIM查找字符串

全匹配

模糊匹配(正则表达式)

快速查找​​​​​​​


VI的使用

VI的三种模式

命令行模式(command mode): 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
插入模式(Insert mode) :只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
底行模式(last line mode) :将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号......等。

不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。

进入VI

在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:

复制代码
$ vi myfile 

进入vi之后,是处于「命令行模式(command mode)」,要切换到「插入模式(Insert mode)」才能够输入文字。

切换至插入模式(Insert mode)编辑文件

在「命令行模式(command mode)」下按一下字母"i"就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。

也可以点击字母"o",表示进入插入模式,且另起一行。

Insert 的切换

目前处于「插入模式(Insert mode)」,按一下「ESC」键可以转到「命令行模式(command mode)」。

退出VI及保存文件

在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:

: w filename (输入 「w filename」将文章以指定的文件名filename保存)

: wq (输入「wq」,存盘并退出vi)

: q! (输入q!, 不存盘强制退出vi)

搜索

/检索词

大小写敏感

快捷删除

在命令行模式下

比如要删除两行,则按下2dd

比如要删除三行,则按下3dd

光标定位到最后一行

按下shfit+g

VIM查找字符串

全匹配

从上往下查找,比如"string" : /string

从下往上查找,比如"string" : ?string

模糊匹配(正则表达式)

. :通配1个字符 ,如匹配 server, 可以用 /se...r

* :通配多个字符,如匹配 privilege,可以用 p*ge

快速查找

Shift + * :让光标停留在想要查找的单词的任意一个字母上面, 然后输入 Shift + * ,即可快速选中该单词,并且通过 n 或 N 进行上一个或下一个的匹配。

yw :让光标停留在单词的第一个字母上, 然后输入yw拷贝该单词, 然后输入 / (Ctrl + R) 0 (即 /"0),回车, 就查找到了第一个匹配的单词, 并且通过 n 或 N 进行上一个或下一个的匹配。

相关推荐
z***948413 小时前
Linux下安装Nginx服务及systemctl方式管理nginx详情
linux·运维·nginx
凉晓风13 小时前
Linux上TCP通信异常排查工具命令
linux·运维·tcp/ip
Xの哲學13 小时前
Linux 分区表深度技术剖析
linux·网络·算法·架构·边缘计算
码龄3年 审核中14 小时前
Linux record 03
java·linux·运维
星驰云14 小时前
记一次CentOS 硬盘损坏无法启动修复教程
linux·运维·centos
人工智能训练14 小时前
windows系统中的docker,xinference直接运行在容器目录和持载在宿主机目录中的区别
linux·服务器·人工智能·windows·ubuntu·docker·容器
q***474314 小时前
Windows 和 Linux 系统下,如何查看 Redis 的版本号?
linux·windows·redis
代码对我眨眼睛14 小时前
Ubuntu 系统 NVIDIA 显卡驱动自动化安装全流程
linux·ubuntu·自动化
xiong2learning14 小时前
Linux虚拟机无法使用u盘的一种可能-- 重新下载open-vm-tools + open-vm-tools-desktop解决
linux
LCG元14 小时前
实战:一次完整的网站故障排查记录(从用户访问到数据库)
linux