linux vim使用 详解,vim使用详解

article/2025/10/7 10:37:33

vim是vi的增强版本,具有比vimi更加强大的功能,对于尤其适合编写脚本,下面总结一下vim的常用方法。

vim三种工作模式。

1. 编辑模式:

以vim打开文件就直接进入此模式,可以在此模式中删除、复制、粘贴等操作。

5005c733bcbf3c29e7e4655a4cf9dd6f.png

61d6336b8842ef474149139e81d63a7e.png

如上图所示,使用vim打开/etc/inittab文件,直接进入编辑模式。

2. 输入模式:

在此模式下进行文件内容的输入和编辑。

5934fd6f1bc15f20a40dd7ebb131c027.png

看到“INSERT”即进入了输入模式

3. 末行模式:

可以提供查找数据、替换字符、设置vim环境、保存文件等功能。

270f912b517d108cff88354312f4ea9e.png

看到“:”即进入了末行模式。

打开文件:

vim [option]…[FILE]

当指定的文件存在则打开文件,如果不存在则可以保存为新的文件。

编辑模式 –> 输入模式

当使用vim打开文件时默认进入的是编辑模式,如果想要切换到输入模式,可以使用以上方法

i:在光标所在处切换为输入模式。

I:光标移至行首切换为输入模式。

a:在光标所在处的后方切换为输入模式。

A:光标移至行尾切换为输入模式。

o:在光标所在处的下方新建一个空行并切换为输入模式。

O:在光标所在处的上方新建一个空行并切换为输入模式。

输入模式 –> 编辑模式

按 ESC 键即可由输入模式回到编辑模式

编辑模式 –> 末行模式

直接输入“:”即可进入末行模式

末行模式 –> 编辑模式

按 ESC 键可以回到编辑模式

注:从输入模式不能直接进入末行模式,必须经由编辑模式方可切换,输入模式 –> 编辑模式 –> 末行模式

vim +# file:打开文件时光标直接处于第#行行首。

退出文件:

末行模式下

不保存强制退出

ab2e09c7c29a379b38ae0d09d3b3d2ea.png

保存退出

两种方法效果相同

345901cafa15a6c51f47bb1ae6f8af72.png

9aa01e8c5e1863262a31fc6b2f86f77c.png

强制保存

f14cca03f6759dab708d9dd3015edb87.png

强制保存退出

c51ba3784f77105fa0898d685c92cff7.png

编辑模式下

输入ZZ也可以保存退出。

编辑模式

光标移动

字符间移动

h或左箭头:光标向左移动一个字符

j或下箭头:光标向下移动一个字符

k或上箭头:光标向上移动一个字符

l或右箭头:光标向右移动一个字符

一次移动多个字符    #{h|j|k|l}

eg:输出3j即可向下移动3行

单词间跳转:

w:光标移至下一个单词的词首

b:光标移至当前单词或前一个单词的词首

e:光标移至当前单词或下一个单词的词尾

一次移动多个单词    #{w|b|e}

行内移动:

^:光标移至行首(第一个非空字符)

0:光标移至行首(绝对行首)

$:光标移至行尾(绝对行尾)

句子间移动:

):下一句的句首

(:上一句的句首

段落间移动:

}:下一段

{:上一段

行间移动:

G:最后一行

#G:直接跳转至第#行

gg:直接跳转至首行

#[Enter]:光标向下移动#行

翻屏操作:

Ctrl+f:向文件尾部翻一屏

Ctrl+b:向文件首部翻一屏

Ctrl+d:向文件尾部翻半屏

Ctrl+u:向文件乎部翻半屏

编辑命令

删除操作:

x:删除光标所在处的字符(相当于[Del]键)

X:删除光标前面的一个字符(相当于[Backspace]键)

#x:删除后面的#个字符

d:删除命令

结合光标跳转字符使用,删除跳转范围内的字符

#d+光标跳转符(w,b,e,$,0,^)

dd:删除光标所在行

dG:删除从光标所在到最后一行的所有数据

d1G:删除光标所在到第一行的所有数据

D:删除从光标所在处至行尾的内容,与d$相同

注意:最后一次删除的内容会被保存到缓冲区

复制操作:

y:复制命令

结合光标跳转字符使用,复制跳转范围内的字符

#y+光标跳转符(w,b,e,$,0,^)

yy:复制光标所在的那一行

#yy:复制光标所在的向下n行

y1G:复制光标所在行到第一行的所有数据

yG:复制光标所在行到最后一行的所有数据

Y:复制光标所在处至行尾的内容,与y$相同

粘贴操作

粘贴的位置取决于最后一次删除、复制操作的内容,如果删除或复制的操作为行则:

p:粘贴至光标所在行的下方

P:粘贴至光标所在行的上方

如果删除或复制操作为字符或单词则:

p:粘贴于当前光标所在处后方

P:粘贴于当前光标所在处前方

修改操作

修改操作可以在进行删除操作后直接切换为输入模式

c:删除命令

结合光标跳转字符使用,删除跳转范围内的字符

#c+光标跳转符(w,b,e,$,0,^)

cc:删除光标所在行并切换至输入模式

cG:删除从光标所在到最后一行的所有数据并切换至输入模式

c1G:删除光标所在到第一行的所有数据并切换至输入模式

C:删除从光标所在处至行尾的内容并切换到输入模式,与c$相同

撤消编辑

u:撤消最近一次的操作

#u:撤消最近的#次操作,最多可撤消50次的内容

撤消此前的撤消操作

Ctrl+r

重复前一条命令

.

查找与替换

/pattern:向下查找与pattern匹配的字符串

?pattern:向上查找与pattern匹配的字符串

n:重复前一个查找的操作。如果使用/进行查找,则n表示向下查找,如果使用?进行查找,则n表示向上查找

N:与n相反,表示与前一个查找进行反向操作

末行模式

行间跳转

:#[Enter]:光标直接跳转至第#行

$:可跳转至最后一行

内容定界

指定起始位置和结束位置来定义内容的范围

eg: :20 +3 表示从20行开始的4行

#:第#行

.:当前行

$:最后一行

%:全文,相当于1,$

:10,$-1    表示从第10行到倒数第2行

c,d,y等命令可直接附加在指定的范围后使用

:10,$-1 d:表示删除从第10行到倒数第2行的内容

w:将指定范围的内容另存至其它文件

:.$w /root/test:将从当前行至最后一行的内容另存为/root/test

如不指定范围,直接使用w命令,则可将整个文件另存为一个新的文件

r:在指定位置读入其它文件的内容

:.r /root/test:在当前位置读入/root/test文件内容

查找与替换

s/查找模式/要替换成的内容/gic

查找模式:可以使用正则表达式

要替换成的内容:不能使用模式,仅能使用引用

引用模式匹配到的所有内容可以使用&符号来替代\1等字符

g:global,全行替换

如果不使用g,查找的字符所在行中存在不止一个匹配项时,只替换第一个

i:不区分字符大小写

:%s/\/FILE/gi:只替换file单词,忽略包含在单词中的file字符,且不区分大小写

c:替换前提示用户确认是否替换,常与g同时使用

可视化模式:

用于选取整块范围的模式

在编辑模式下输入以下命令:

v:光标走过的字符都被选中

V:光标走过的行都被选中

Ctrl+v:以长方形的方式进行选择

1096cb4e73353fd92e6e237ec00bc981.png

以上图为例,将光标移到Default的词首,按下Ctrl+v键,可以看到模式切换为块选择,此时选中Default单词并向下移动光标,与Default字符相对齐的字符都被选中。

y:将选中的数据复制

d:将选中的数据删除

多文件模式

可以同时打开多个文件,并在各个文件中进行切换

vim file1,file2……

:file:列出目前这个vim打开的所有文件

:n:下一个文件

:N:上一个文件

:next:与:n相同

:previous:与:N相同

:last:最后一个文件

:first:第一个文件

:wqa:保存并退出所有文件

:wqall:与:wqa相同

多窗口模式

多文件操作

vim [option] file1,file2 ……

[option]:

-o:水平分割多个文件

-O:垂直分割多个文件

在已打开的文件中再次的打开一个文件并且以水平分割的方式放置: :sp [filename]

6cf0083298adb28a54f0021f4f5a0495.png

文件默认以水平分割的方式打开

7e98b56c84b1aeb55d9e0870a695b3b8.png

在多个窗口中进行切换:    Ctrl+w,方向键

单文件操作

Ctrl+w,s:水平分割单个文件

Ctrl+w,v:垂直分割单个文件

4afb8fd049cf7b42645f88e0e6b3578d.png

首先以将文件水平分割成上面两个窗口,再把上面的窗口以垂直方式分割成两个窗口

:sp:水平分割单个文件

7a2c41111ab5fea7f405112965068208.png

窗口属性定义

以下操作均在末行模式下进行:

:set nu:显示行号

:set nonu:取消显示行号

993b661b7752fbd2f20194109a5396d1.png

:set ai:自动缩进

:set noai:取消自动缩进

设置了自动缩进后,换行时光标会自动对齐上面行的行首位置,而不会回到绝对行首

:set  ic:忽略字符大小写

:set noic:取消忽略字符大小写

设置此项后在查找字符时会忽略大小,默认关闭

:set sm:显示与之匹配的括号的另外半边

:set nosm:取消显示与之匹配的辞呈的另外半边

39f7d9261b9fa4aa6ef8e2daac314924.png

上图中将光标移至左中括号时,自动高亮显示与之匹配的右中括号

:set hlsearch:开启搜索高亮显示

:set nohlsearch:关闭搜索高亮显示

c5b7794431789f9ed57f99fe2fd7a937.png

上图中搜索f,会自动高亮标识所有的f,此选项会默认开启,并且即使关闭了当前文件,再次打开其它文件时也会高亮标识之前的搜索结果。

:set syntax= [on|off]:语法高亮显示控制

716bd69c2166157953685590a57bff40.png

上图中带颜色的字符即为开启语法高亮显示的结果,可以帮忙用户标识语法结构,查找语法错误,如果关闭此功能则如下图所示

4971b4eb8f5eacb8c64c9397cab2db0e.png

:set all:显示目前所有环境参数设置值

:set:显示与系统默认值不同的设置参数,一般就是用户改动过的设置

配置文件

可将属性命令写在配置文件中设置vim默认属性,注释使用双引号。

全局配置文件:/etc/vimrc

用户配置文件:~/vimrc


http://chatgpt.dhexx.cn/article/Vt6QBdIh.shtml

相关文章

linux之vim使用

一.vim是什么 vim是从 vi 发展出来的一个文本编辑器。 简单理解就是vim是linux系统下的一种文本编辑器,但是操作方式和windows有很大的区别。 vim操作键盘功能图 二.vim安装 在linux中按下 CtrlT进入terminal,然后输入命令sudo apt-get install vim…

Vim使用进阶

作为一个使用vim挺长时间的人,现在来写这篇东西确实是尴尬的,就像很多大神们说的,vim是世界上最好用的编辑器,没有之一。然后前两天又重新看了看vim的那些功能和使用方法,更觉得这么长时间使用vim却远没有用到它的强大…

简单记录Git和vim使用

git 基本教程:Git入门学习 此外从中摘录些常用操作 git分支中常用指令: 列出所有本地分支 git branch 列出所有远程分支 git branch -r 新建一个分支,但依然停留在当前分支 git branch [branch-name] 新建一个分支,并切换…

linux基础学习-vim使用方法

直接输入vim,进入的是空白vim基本使用 命令模式:按键代表命令 i/a,切换为编辑模式 :,切换到末行模式 dd,删掉一行(前面可以加数字) yy,复制光标所在行(前面可以加数字) p…

VIM使用指南

VIM使用指南 入坑废话不说,先上图vim 选择文本,删除,复制,粘贴文本的选择 vim命令总结1.删除字符2.删除一行3.删除换行符4.撤销5.重做6.追加7.使用命令计数8.退出9.放弃编辑10.以Word为单位的移动11.移动到行首或行尾12.移动到指定…

Linux编辑器-vim使用

文章目录 01. vim的基本概念02. vim的基本操作03. vim正常模式命令集04. vim末行模式命令集 01. vim的基本概念 此篇讲解vim的三种模式(其实有好多模式,目前掌握这3种即可),分别是命令模式(command mode)、插入模式(Insert mode&…

VIM使用技巧及快捷操作

之前在网上找了找资料,拼了这篇博客《配置gvim,建立ide环境(持续更新)》,今天就说说VIM使用技巧及快捷操作。 vi键盘图 先贴一图: 这里也是一小部分,还有外语的: 详细使用技巧及快…

vim使用方法与小技巧

一.vim的简单介绍 vim是一个由vi增强版的编辑工具,是一个开源免费的软件,它功能丰富,使用快捷,应用广泛,。vim也是大多数linux系统上的默认编辑器,用于对文本文件进行建立,显示,编辑,删除,复制等操作,需要用命令进行控制。 二.vim帮助信息 在命令行输入vim --help 或…

Vim使用技巧总结

目录 vim工作模式 插入模式: 定位命令: 删除命令: 修改命令: 复制和剪切命令: 替换或取消命令: 搜索和搜索替换命令: 保存和退出命令: Vim使用技巧: 选择部分内容另存为: 合并文件:…

vim使用教程图文教程(超详细)

1. 三种模式 vim编辑器有三种模式:命令模式、编辑模式、末行模式。 「命令模式」:可以进行删除、复制、粘贴等快捷操作。「编辑模式」:可以编辑文件内容。「末行模式」:可以通过命令操作文件,比如搜索、保存、退出等…

vim使用入门

目录 vim模式介绍1.1 模式介绍1.2 模式之间切换1.3 进入vim1.4 退出vim vim模式介绍 1.1 模式介绍 vim具有6种基本模式和5种派生模式。 6种基本模式如下: 普通模式 vim启动后的默认模式。使用编辑器命令,比如移动光标,删除文本等等 普通模式…

VSCode中Vim使用(详细)

文章目录 Vim基础键映射模式光标移动编辑技巧 常用命令自带插件其他 Vim基础 键映射 {/* vim */"vim.incsearch": true,"vim.useSystemClipboard": true,// "vim.hlsearch": true, 对/字符串的搜索方式来说,搜索到的结果一直高亮显示,不设置这…

【Linux】Linux编辑器—vim使用

目录 1.vim的基本概念2.vim基本操作3.vim命令模式命令集4.vim末行模式命令集5.简单vim配置6.使用sudo提权7.关闭vim时使用 ctrl z 退出怎么解决? 为什么要学习vim? “在 Linux 系统中一切都是文件,而配置一个服务就是在修改其配置文件的参数…

Linux-vim使用

目录 基本vim的基本操作: 命令模式: 光标定位: $:光标定位到行右: ^:光标定位到左: shiftgG:光标定位到底部 gg:回到顶部 nshiftg表示跳转光标到第n行 文本复制相关…

VIM使用教程-详细

先上一张图: 导语 VIM 是 Linux 系统上一款文本编辑器,它是操作 Linux 的一款利器。 当前有很多优秀的 IDE 都支持安装 VIM 插件,原因就是使用它便捷,高效,很爽! 本文主要记录了 VIM 的一些常用使用技巧&am…

Vim使用

vim的三种模式: 命令模式、文本模式 、末行模式。 进入文本模式的各种方式: i 进入文本模式,光标前插入字符 a 进入文本模式,光标后插入字符 o 进入文本模式,光标所在行的下一行插入 I 进入文本模式,光标所…

vim使用(全集)

希望对大家有帮助,文档做过修改。 1、辑模式: 在一般模式中可以进行删除、复制、粘贴等的操作,但是却无法编辑文件的内容,只有当到你按下【i, I, o, O, a, A, r, R】等任何一个字母之后才会进入编辑模式。这时候屏幕的左…

vim使用教程图文教程(零基础超详细)

「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 vim编辑器使用教程 1. 三种模式2. 三种打开方式3. 命令模式3.1 移动光标3.2 搜索替换3.3 复制粘贴删除 4. 编辑模式5. 末行模式 vim是Linux系…

MATLAB——偏最小二乘回归算法

设有q个因变量{y1,y2...yq}和p个自变量{x1,x2...xp}。为了研究因变量和自变量的统计关系,观测n个样本点,构成了自变量与因变量的数据表X 和Y 。部分最小二乘回归分别在X和Y中提取成分和,他们分别是x1,...,xp和y1,...,yq的线性组合。提取这两个成分有以下…

【数学建模】最小二乘回归+Java代码实现

文章目录 一、最小二乘法的历史二、最小二乘法的原理三、最小二乘法的公式四、Java代码实现最小二乘法五、输出预测结果 一、最小二乘法的历史 1801年,意大利天文学家朱赛普皮亚齐发现了第一颗小行星谷神星。经过40天的跟踪观测后,由于谷神星运行至太阳…