vim编辑器的三种工作模式:命令模式、输入模式、末行模式

打开文件:将准备打开的文件指定为命令行上的一个参数。# vim /etc/hosts

编辑文本

在命令模式中,键的映射不是为了插入所按下的字符,而是为了执行某类操作的命令。

要切换到插入模式,有以下命令

结果

i

切换到插入模式,并在当前光标位置之前开始插入(插入)。

a

切换到插入模式,并在当前光标位置之前开始插入(附加)。

I

将光标移至当前的开头位置,并切换到插入模式。

A

将光标移至当前的结尾位置,并切换到插入模式。

R

从光标下的字符开始,切换至替换模式。处于替换模式时,不会插入文本,所输入的每个字符均将替换掉当前文档中的字符。

o

在当前行的下方新打开一个行,并切换至插入模式。

O

在当前行的上方新打开一个行,并切换至插入模式。

 

注意:按Esc将会始终取消当前命令,或者返回至命令模式。常见做法是按两下Esc(或按更多下),以确保返回至命令模式。

命令行模式操作

操作

操作类型

按键指令

用途

光标

跳转

移动光标

上下左右键头

上下左右

光标行内跳转

Home键或^、数字0

跳转到光标所在行行首

End键或者$

跳转到光标所在行行尾

h

光标向左移动一个位置

l

光标向右移动一个位置

全文翻页

PgUp、PgDn

向上翻页、向下翻页

光标行间跳转

1G或gg

跳转至文件的首行

G

跳转至文件的末行

#G或#gg

跳转到文件的#行

j,#j

光标向下移动一行,#行

k

光标向上移动一行

移动

w

将光标移动到下一单词的开头(W包含标点符号)

b

将光标移动到上一单词的开头(B包含标点符号)

(

将光标移到当前或上一句子的开头

)

将光标移到下一句子的开头

{

将光标移到当前/上一段落的开头

}

将光标移到当下一段落的开头

复制、粘贴、删除

复制

yy、#yy

复制光标处的一行、复制当前光标向下#行

粘贴

p、P

粘贴至光标之后,之前

删除

x/delete

删除光标处的单个字符

dd、#dd

删除光标处的一行、#行(其实是剪切)

d^

从光标处删至行首

d&

从光标处删除至行尾

C(大写)

从光标处删除至行尾,并且进入插入模式

dj

删除当前行和下一行

合并

合并行

J

合并当前行和下一行

查找/撤销/保存

文本查找

/word

向后查找字符串”word”

n/N

跳至后/前一个结果

将立即向前搜索光标处的单词

撤销编辑

u

撤销最近的一次操作,能多次使用 undo

U

撤销对当前行的所有操作

ctrl+r

取消前一次的撤销操作,即重做 redo

对使用u命令撤销操作进行恢复

.(句点)

将对当前行恢复最近一个编辑操作。这可用于对多行轻松执行同一编辑操作。

保存退出

ZZ

保存修改并退出

可视化选择

选取操作

v

取连续的多个字符

V

取连续的多行

Ctrl+v

取连续的多列,例:取多列,指进行注释

gv

重复上次选取

针对选取文本的操作

d

删除

y

复制

每一个命令都可通过在实际命令前键入重复次数来重复执行一定的次数,称为计数。

替换文本——按c键(change),后面加上光标移动。

cw:将当前光标位置更改到当前单词的末尾,要替换的文本被删除(放置到未命名寄存器中),同时切换至插入模式,键入要替换的内容。

按两下c(cc),将开始以行范围的方式替换,也适用于其他命令

大多数移动命令可以带上i和a前缀,以选择inner或a版本的移动。Ciw将替换整个当前单词,而不仅仅是从当前光标位置起,caw则执行相同的功能,但包含周围的任何空白区。

要替换到行末止,使用c$,但C可执行相同功能,也适用于其他命令

要仅替换光标处的字符,可按r,再键入新的字符。

要改变光标处字符的大小写,可按~

复制操作称为拖拉(y),粘贴称为旋转(p)

5yaw:将复制当前单词,及后面4个单词(共5个)

Vim提供26个命名寄存器,以及多个特殊用途的寄存器。拥有多个寄存器可让用户更加高效地执行剪切和粘贴,而不必担心丢失数据,如果未指定要使用的寄存器,则将使用“未命令”的寄存器。常规寄存器称为a到z,通过在命令的计数和实际命令之间放“registername来选择;如;3“tyy要复制当前行和后面两行到t寄存器中

要放置命名寄存器中的内容,只需在旋转命令之前加上”registername,如:“sp 将在光标位置后面放置s寄存器中的内容。

重要注意:每次使用命名寄存器时,未命名寄存器也会更新。

删除和更改操作也可加上寄存器选择作为前缀。未指定寄存器时,将仅使用未命名寄存器。当使用寄存器的大写版本时,被剪切或拖拉的文本将附加到该寄存器,而不是覆盖它。

特殊寄存器

有10个数字编号的寄存器(0~9)。寄存器“0将始终拥有最近拖拉的文本的副本,而寄存器”1则具有最近删除的文本的副本。当新的文本被更改或删除时,“1的内容将移到”2中,“2的内容将移到”3中,以此类推。

重要注意:与命名寄存器不同,数字编号寄存器的内容不会在会话之间保存。

末行模式操作

操作类型

按键指令

用途

复制

 

:1,3y

复制1-3行

删除

 

:1,3d

删除1-3行

保存/退出/文件操作

存盘及退出

:w

保存当前文件 write

:w /路径/文件

另存为

:q!

放弃已有更改后强制退出 quit

:wq或:x

保存已有修改后并退出

:wq!

强制保存退出

文件操作

:w /root/newfile

另存为其他文件

:r /路径/文件

读入其他文件内容

:e /路径/文件

打开其他文件编辑

字符串替换substitute

行内替换

:s/old/new

替换当前行第一个old为new

:s/old/new/g

替换当前行所有old为new

区域内替换

:n,m s/old/new/g

替换第n-m行所有的old为new

:% s/old/new/g

替换全文所有的old为new,对替换动作不提醒

:% s/old/new/gc

替换全文所有的old为new,对每个替换动作进行提醒

开关参数

的控制

编辑器设置

:set all

可查看所有可配置的参数

:set nu|nonu

显示/不显示行号

set ai|noai

启用/关闭自动缩进

autoindent 可缩写为 ai

:syntax on| off

启用/关闭语法高亮

:set hls| nohls

开启/关闭查询结果高亮显示

hlsearch 可缩写为 hls

执行外部命令

:! 命令

在vim中可以执行外面命令行命令

:r ! 命令

在vim中可以读入外部命令行的执行结果到当前的文本

其他

:X

加密

Vim中的搜索和替换通过ex模式实施,其使用的语法与用户通过sed搜索和替换时所用的相同,包括使用正则表达式进行搜索的功能:ranges/pattern/string/flags

Range可以是行号、行号范围、搜索条件、%(当前文档中的所有行;搜索和替换通常仅针对当前行操作),或’<,’>(当前的可视选择)。

两个最为常见的flags:g(替换一行中多个位置上的pattern)、i(使当前的搜索区分大小写)

例:在所有行中搜索每个位置上的“cat”,将它替换成“dog”,不区分大小写,但仅针对完整词语而不是单词中的一部分,可使用命令::%/\<cat\>/dog/gi

yy2p 复制当前行,并粘贴2次

:1,5 s/^#//g  ==> 删除第1~5行行首的#

:1,5 s/^/#/g  ==> 在第1~5行行首插入#

:%s/MAN/man/g  %要处理每一行 s/MAN/man/搜索和替换的内容 g此替换操作可在一行中操作多次

vim编辑器的工作模式相关推荐

  1. Linux Vim三种工作模式(命令模式、输入模式和编辑模式)详解

    通过前面的学习我们知道,Linux 系统中所有的内容都以文件的形式进行存储,当在命令行下更改文件内容时,常会用到文本编辑器. 我们首选的文本编辑器是 Vim(至于为什么,可查看<Vi和Vim的区 ...

  2. Linux——Vim编辑器三种模式(命令模式、输入模式、末行模式)的基本使用总结

    目录 1.三种命令模式 2.Vim编辑器的简单使用 3.Vim编辑器的常用命令 1.三种命令模式 Vim是一款出色的文本编辑器,多数Linux操作系统都会默认安装,其包括三种模式,各模式的切换方法如下 ...

  3. vim三种工作模式 命令模式、编辑模式、末行(底行)模式

    命令模式: 进入vim的默认模式,可以浏览文件,通过移动光标进行一些操作 1.光标移动到行首 按键:shift+6 ("^"符号)  光标移动到行尾 按键:shift+4(&quo ...

  4. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

  5. 你见过的最全vim编辑器常用操作总结(我是困不住的野马,却想做你怀里的猫)

    目录 一.文本编辑器vi/vim 1.文本编辑器的作用 2.Linux中最常用的文本编辑器 3.vi/vim区别 二.vim编辑器的工作模式 1.三种工作模式 2.不同模式之间的切换 (1)命令模式- ...

  6. Linux基础——vim编辑器的使用

    文章目录 1. 简介 2. 工作模式 3. vim编辑器的使用 3.1 命令模式下的操作 3.1.1 光标的移动 3.1.2 删除操作(并不是真的删除,实际上是剪切) 3.1.3 撤销操作 3.1.4 ...

  7. linux文件编辑器的三种模式,Linux中文本编辑器三种工作模式切换及vi编辑器三种工作模式下命令详解...

    文本编辑器的作用 创建或修改文本文件 维护Linux系统中的各种配置文件 Linux中最常用的文本编辑器 Linux中最常用的文本编辑器 vi:类UNIX操作系统的默认文本编辑器 vim:vim时vi ...

  8. linux中vim文本编辑器的默认模式是,Linux 下 vi/vim 文本编辑器超详细使用指南

    Linux下的编辑器最经常使用的就是vim或者vi文本编辑.vi 和vim 编辑器的区别是vim是vi的改进版本,在vi 编辑器的基础上上扩展了不少实用的功能. 大多数的linux/unix 发行版本 ...

  9. Linux嵌入式开发——vim编辑器

    文章目录 Linux嵌入式开发--vim编辑器 准备操作 使用 打开 工作模式 一般模式 编辑模式 命令行模式 保存退出 其他操作方式 Linux嵌入式开发--vim编辑器 准备操作 首先我们需要安装 ...

最新文章

  1. PAT-乙级-1021. 个位数统计 (15)
  2. 2020年PMCAFF大咖分享合集(有回放)
  3. 在window 2008 server r2 64位 IIS上配置 apache tomcat 8.0
  4. u3d资源打包只能打包场景材质,不能打包脚本
  5. 基于vue+mint-ui的mobile-h5的项目说明
  6. 苏宁易购:Hadoop失宠前提是出现更强替代品
  7. c++ sleep函数_Linux 多线程应用中如何编写安全的信号处理函数
  8. 服务器系统2022安装wsl2,手把手教你踩坑:老白的Docker for Windows安装初探WSL 2 backend...
  9. 22 C#中的异常处理入门 try catch throw
  10. ad19 导出step 没有pcb_PCB设计导出Gerber基本操作及注意事项(三)
  11. uboot网络调试方法
  12. 同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式
  13. Blackman 窗函数
  14. 123457123457#0#----com.MC.konglongtianse222----前拼后广--恐龙填色mc-mc1111
  15. Live2D 博客页面添加板娘
  16. 实验四 javaAPI(预习报告)
  17. 微信小程序开发—(八)canvas绘制图形
  18. 最火的python视频_超火Python400集视频,116-248集思维导图视频介绍(第二季)
  19. 如何在win11中用双硬盘或移动硬盘装Ubuntu 20.04 双系统
  20. Windows7 IP地址切换器

热门文章

  1. spring boot:从零开始搭建一个项目 - day8 实现jwtToken验证
  2. 网站收录 - 学英语
  3. GC.Collect()
  4. 毕淑敏:读书使人优美
  5. 2019年黄埔军校军事夏令营
  6. linux安卓模拟器root,kali linux 安装高性能安卓模拟器Genymotion
  7. 超有爱的Python,独一无二却充满诱惑的设计哲学,Life is short,you need Python!Python洗脑工作!
  8. 618值得买手机排行:1500~4500元手机推荐来了,Top3闭眼买
  9. iPhone 12不用输入密码下载应用方法技巧
  10. Android智能手机编程CNU--1.概述