Vim的常用指令

起因

在很早以前,大家想在windows里面使用linux大多都是通过装双系统或者virtual box还是vmware的虚拟机搞起来的,但是随着docker和k8s这些容器技术的发展和windows自己提供的wsl2,接下去,已经很少有人使用虚拟机了。但是容器机器存在的一个很大的问题就是不带UI界面。以前的话,我在双系统的ubuntu中,还能够通过gedit或者visual code进行可视化编写,现如今由于没有UI界面,更多的人就关注vim的指令。

因为用得少,每次使用vim指令就还得查一次,挺麻烦的,写个文章记录一下。

介绍一下Vim

vi

VI 是一种文本编辑器,全称为 Visual Editor,最初由 Bill Joy 在 BSD Unix 中开发。它具有高度可定制性,可以在不同的操作系统和平台上运行,并支持多种文本格式。

vim

Vim 是一种文本编辑器,它支持多种操作系统和平台。Vim 的全称是 "Vi IMproved",它是 Vi 的增强版。Vi 是一种早期的文本编辑器,它最初由 Bill Joy 在 BSD Unix 中开发。Vim 继承了 Vi 的基本功能和操作方式,并添加了许多新的功能和特性。

  1. 兼容性:Vi 和 Vim 都是基于 Vi 的开发,但 Vim 对 Vi 的兼容性更好。Vim 可以打开和编辑 Vi 文件,但 Vi 不能打开和编辑 Vim 文件。

  2. 功能性:Vim 功能更加强大,支持更多的功能,例如代码补全、编译、错误跳转等,而 Vi 的功能相对较少。

  3. 操作模式:Vi 和 Vim 都有命令模式和编辑模式,但 Vim 增加了一种叫做"可视化模式"的模式,可以更好地显示和编辑文本。

  4. 快捷键:Vi 和 Vim 都支持快捷键操作,但 Vim 的快捷键更加灵活和强大,可以自定义和组合使用。

  5. 插件和扩展:Vim 支持更多的插件和扩展,可以增强功能和适应不同的编辑需求。

正文

  1. 打开文件

    vim demo.txt

  2. 编辑文件

bash 复制代码
//在vim编辑器里面的指令

:open [文件路径]  #打开文件
:save     #保存文件
:q!       #不修改强制退出
:wq       #修改保存文件并退出
:/文本    #搜索匹配的文本
n         #next,跳到下一个匹配上的文本
%s/旧内容/新内容/gc   确认
//编辑模式 快捷键 


方向键                  用于上下作用
K上 J下 H左 L右

0                      跳到行首
$                      跳到行位
Esc                    退出编辑模式,进入指令模式
a                      append
x或者delete            删除光标位置后面单个字符
shift+x或者backspace   删除光标位置前面的单个字符 

dd                    删除所在的行
ndd                   删除当前往下n行


yy                    复制当前行
nyy                   复制当前往下n行
p                     粘贴

u                     undo 撤销上一次行动

ctrl + f              forward 翻整页
ctrl + b              backward 向后翻整页
ctrl + d              down  翻半页
ctrl + u              up    向上翻半页

后续持续更新,欢迎评论区继续补充

相关推荐
db_murphy1 小时前
Oracle数据块8KB、OS默认认块管理4KB,是否需调整大小为一致?
linux
mCell4 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记4 小时前
GPU运维常见问题处理
linux·运维·gpu
誰能久伴不乏5 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔6 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula6 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
-SGlow-6 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw7 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器
van叶~9 小时前
Linux网络-------1.socket编程基础---(TCP-socket)
linux·网络·tcp/ip
风吹落叶花飘荡9 小时前
Ubuntu系统 系统盘和数据盘扩容具体操作
linux·运维·ubuntu