vim基本操作命令

一、vi简介

vi是"Visual interface"的简称,它在Linux上的地位就仿佛Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制。Vi不是一个排版程序,它不象Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。 vi没有菜单,只有命令,且命令繁多

**vi有三种基本工作模式:**命令模式、文本输入模式、末行模式

1.1命令行模式

任何时候,不管用户处于何种模式,只要按一下ESC键,即可使Vi进入命令模式;我们在shell环境(提示符为$)下输入启动Vi命令,进入编辑器时,也是处于该模式下。在该模式下,用户可以输入各种合法的Vi命令,用于管理自己的文档。此时从键盘上输入的任何字符都被当做编辑命令来解释,若输入的字符是合法的Vi命令,则Vi在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。若输入的字符不是Vi的合法命令,Vi会响铃报警。

1.2文本输入模式

在命令模式下输入插入命令i、附加命令a 、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被Vi当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按键ESC即可。

1.3末行模式

末行模式也称ex转义模式。在命令模式下,用户按":"键即可进入末行模式下,此时Vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个":"作为末行模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令执行完后,Vi自动回到命令模式。例如:

复制代码
:sp newfile

则分出一个窗口编辑newfile文件。如果要从命令模式转换到编辑模式,可以键入命令a或者i;如果需要从文本模式返回,则按Esc键即可。在命令模式下输入":"即可切换到末行模式,然后输入命令

二、vim基本操作

vim是从 vi 发展出来的一个文本编辑器 。代码补完、编译及错误跳转等方便编程的功能特别丰富

进入插入模式:

复制代码
i: 插入光标前一个字符 
I: 插入行首 
a: 插入光标后一个字符 
A: 插入行未 
o: 向下新开一行,插入行首 
O: 向上新开一行,插入行首

进入命令模式:

ESC:从插入模式或末行模式进入命令模式

移动光标:

复制代码
h: 左移 
j: 下移 
k: 上移 
l: 右移
M: 光标移动到中间行 
L: 光标移动到屏幕最后一行行首 
G: 移动到指定行,行号 -G
w: 向后一次移动一个字 
b: 向前一次移动一个字
{: 按段移动,上移 
}: 按段移动,下移
Ctr-d: 向下翻半屏 
Ctr-u: 向上翻半屏
Ctr-f: 向下翻一屏 
Ctr-b: 向上翻一屏
gg: 光标移动文件开头 
G: 光标移动到文件末尾

删除命令:

复制代码
x: 删除光标后一个字符,相当于 Del 
X: 删除光标前一个字符,相当于 Backspace
dd: 删除光标所在行,n dd 删除指定的行数 
D: 删除光标后本行所有内容,包含光标所在字符 
d0: 删除光标前本行所有内容,不包含光标所在字符
dw: 删除光标开始位置的字,包含光标所在字符

撤销命令:

复制代码
u: 一步一步撤销 
Ctr-r: 反撤销

重复命令:

复制代码
.: 重复上一次操作的命令

文本行移动:

复制代码
>>: 文本行右移 
<<: 文本行左移

复制粘贴:

复制代码
yy: 复制当前行,n yy 复制 n 行 

p: 在光标所在位置向下新开辟一行,粘贴

可视模式:

复制代码
v: 按字符移动,选中文本 
V: 按行移动,选中文本可视模式可以配合 d, y, >>, << 实现对文本块的删除,复制,左右移动

替换操作:

复制代码
r: 替换当前字符 
R: 替换当前行光标后的字符

查找命令:

复制代码
/: str查找
n: 下一个
N:上一个

**替换命令:**把abc全部替换成123

复制代码
末行模式下,将当前文件中的所有abc替换成123
:%s/abc/123/g

末行模式下,将第一行至第10行之间的abc替换成123
:1, 10s/abc/123/g

vim里执行 shell 下命令:

复制代码
末行模式里输入!,后面跟命令

学习导航:https://www.xqnav.top/

相关推荐
yuxb731 分钟前
Linux 文本处理与 Shell 编程笔记:正则表达式、sed、awk 与变量脚本
linux·笔记·正则表达式
刘一说12 分钟前
CentOS 系统 Java 开发测试环境搭建手册
java·linux·运维·服务器·centos
wdxylb6 小时前
云原生俱乐部-shell知识点归纳(1)
linux·云原生
飞雪20077 小时前
Alibaba Cloud Linux 3 在 Apple M 芯片 Mac 的 VMware Fusion 上部署的完整密码重置教程(二)
linux·macos·阿里云·vmware·虚拟机·aliyun·alibaba cloud
路溪非溪7 小时前
关于Linux内核中头文件问题相关总结
linux
Lovyk10 小时前
Linux 正则表达式
linux·运维
Fireworkitte10 小时前
Ubuntu、CentOS、AlmaLinux 9.5的 rc.local实现 开机启动
linux·ubuntu·centos
sword devil90011 小时前
ubuntu常见问题汇总
linux·ubuntu
ac.char11 小时前
在CentOS系统中查询已删除但仍占用磁盘空间的文件
linux·运维·centos
雷工笔记12 小时前
【软件安装】VScode介绍安装步骤及中文界面设置方法
ide·vscode·编辑器