Linux工具之Vim编辑器

Vim工具

图片

关于Vim

Vim是Linux系统下一款功能强大的编辑器,在Vi的基础上改进和增加了许多特性。

Vim的三种模式

编辑模式。

输入模式。

末行模式。

三种模式之间的关系如下图:

图片

三种模式之间的转换方式如下:

编辑–>输入:

    i: 在当前光标所在字符的前面,转为输入模式;
    a: 在当前光标所在字符的后面,转为输入模式;
    o: 在当前光标所在行的下方,新建一行,并转为输入模式;
    I:在当前光标所在行的行首,转换为输入模式
    A:在当前光标所在行的行尾,转换为输入模式
    O:在当前光标所在行的上方,新建一行,并转为输入模式;

输入–>编辑:

    ESC

编辑–>末行:

    :

末行–>编辑:

    ESC, ESC

Vim常用命令

Vim的常用命令如下图所示:

图片

具体常用命令可以分为以下几个大类:

打开/退出

vim -R file1 只读打开
:qall 退出所有文件
:wq 写入并退出
:q! 强制退出

插入

i 在当前位置生前插入
I 在当前行首插入
a 在当前位置后插入
A 在当前行尾插入
o 在当前行之后插入一行
O 在当前行之前插入一行

移动

h 左移一个字符
l 右移一个字符
k 上移一个字符
j 下移一个字符

删除

dd 删除当前行
dj 删除当前行和上一行
dk 删除当前行和下一行
10dd 删除当前行开始的共10行
D 删除当前字符至行尾
x: 删除光标所在处的单个字符
#x: 删除光标所在处及向后的共#个字符

跳转

gg 跳转到文件头
G 跳转到文件尾
gg=G自动缩进 (非常有用)
Ctrl + d 向下滚动半屏
Ctrl + u 向上滚动半屏
Ctrl + f 向下滚动一屏
Ctrl + b 向上滚动一屏
冒号+行号,跳转到指定行;比如:120,跳转到120行;
$ 跳转到行尾0 跳转到行首

编辑

u             撤销
Ctrl + r      重做
yy            复制当前行
按v(逐字)或V(逐行)进入可视模式,然后用jklh命令移动即可选择某些行或字符,再按y即可复制任意部分
p 粘贴在当前位置
另外,删除在vim里面就是剪切的意思,所以dd就是剪切当前行,可以用v或V选择特定部分再按d就是任意剪切了

查找

/text  查找text,按n健查找下一个,按N健查找前一个

?text  查找text,反向查找,

:set ignorecase  忽略大小写的查找
:set noignorecase  不忽略大小写的查找

替换

:s/old/new/ 用old替换new,替换当前行的第一个匹配
:s/old/new/g 用old替换new,替换当前行的所有匹配
:%s/old/new/ 用old替换new,替换所有行的第一个匹配
:%s/old/new/g 用old替换new,替换整个文件的所有匹配
也可以用v或V选择指定行,然后执行

多文件操作

vim file1 file2 file3 ... 同时编辑多个文件
:split 将窗口分成上下两个子窗口,对应两个不同的文件
:vsplit 将窗口分成左右两个子窗口,对应两个不同的文件
:open file4 打开新文件
:bn 切换到下一个文件(当前窗口)
:bp 切换到上一个文件(当前窗口)
Ctrl-w h    移动到窗口左边
Ctrl-w j    移动到窗口下边
Ctrl-w k    移动到窗口上边
Ctrl-w l    移动到窗口右边

高级话题

1、显示或取消显示行号

    :set nu
    :set nonu
    mu = number

2、显示忽略或区分字符大小写

    :set ic
    :set noic
    ic = ignorecase

3、设定自动缩进

    :set ai
    :set noai
    ai = autoindent

4、查找到的文本高亮显示或取消

    :set hlsearch
    :set nohlsearch

5、语法高亮

    :syntax on
    :syntax off

``
:set ic
:set noic
ic = ignorecase


3、设定自动缩进

:set ai
:set noai
ai = autoindent

4、查找到的文本高亮显示或取消

:set hlsearch
:set nohlsearch

5、语法高亮

:syntax on
:syntax off

关于Linux工具之Vim编辑器,你学废了么?


真诚地邀请您加入我们的大家庭.
在这里不仅有技术知识分享,还有博主们之间的互帮互助
不定期发红包,每月更有抽奖环节,游戏机和实体书相赠(包邮)
让我们抱团取暖,抱团内卷.打造美好C站.期待您的加入.
备注 : CSDN-xxxxxx (xxxxxx代表你csdn的昵称)

猜你喜欢

转载自blog.csdn.net/qq_44590469/article/details/126465304
今日推荐