linux之vim编辑器的使用

前言: vi/vim介绍

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、 windows。我们课堂上,统一按照vim来进行讲解。 

一、vim的基本概念

vim有许多种模式,但我们通常只需要掌握三种模式就行,它们分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

1> 正常/普通/命令模式(Normal mode)

        控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode

2> 插入模式(Insert mode)

        只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。

3> 底行模式(last line mode)

        文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift + : 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入‘

二、vim的基本操作

1.命令模式

vim打开自动进入命令模式,如在其它模式中,按Esc键即可退入命令模式

n+yy

连续复制n行

n+p 粘贴到光标的下一行,n:表示把指定内容连续粘贴n次
u 撤销
ctrl+r 对历史撤销
n+dd 剪切指定行,n:剪切连续的n行
shift+4=$ 将光标定位到当前行的末尾
shift+6=^ 将光标定位到当前行的开头
gg 将光标定位到当前文本的最开头
shift+g=G 将光标定位到当前文本的最后一行
n+shift+g=nG 将光标定位到当前文本的第n行
h,j,k,l 左,下,上,右,也可以带n
w 按照单词为单位进行光标后移
b 按照单词为单位进行光标前移
shift+`=~ 在当前文本原地对字母进行大小写快速切换
n+x 删除光标后续的一个字符,可以一次删除n个(一行内)

n+shift+x = nX

删除光标之前的一个字符,可以一次删除n个(一行内)
n+r 对光标指定的位置,进行一个字符的替换,可以一次替换多个
shift+r=R  进入替换模式,直接进行文本替换

2.插入模式

                     进入插入模式

i 在当前光标进入
a 在当前光标的下一格进入
o 在当前光标的下一行进入

3.底行模式

在命令模式中,按shift+;=: 进入底行模式

w 保存
q 退出
wq 保存并退出
强制
set nu/nonu 打开/去掉行号
/关键字 搜索
!command 不退出,可以进行shell命令的执行,常用函数的查看
vs filename 分屏,多文件操作

相关推荐

  1. Linux学习路 | vim编译器vim编译器使用

    2024-03-18 15:40:02       30 阅读
  2. Linux编辑器-vim使用

    2024-03-18 15:40:02       42 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-18 15:40:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-18 15:40:02       101 阅读
  3. 在Django里面运行非项目文件

    2024-03-18 15:40:02       82 阅读
  4. Python语言-面向对象

    2024-03-18 15:40:02       91 阅读

热门阅读

  1. linux: network: sysctl: netdev_budget_usecs的出现

    2024-03-18 15:40:02       36 阅读
  2. hive库表占用空间大小的命令

    2024-03-18 15:40:02       45 阅读
  3. 数据库的约束

    2024-03-18 15:40:02       43 阅读
  4. 2024-Centos7安装PostgreSql14

    2024-03-18 15:40:02       36 阅读
  5. C++ primer 第十四章

    2024-03-18 15:40:02       38 阅读
  6. CSS浮动

    CSS浮动

    2024-03-18 15:40:02      37 阅读
  7. 免费SSL证书Let‘sEncrypt安装

    2024-03-18 15:40:02       42 阅读
  8. C#基础之异常处理

    2024-03-18 15:40:02       35 阅读
  9. Python中的with语句以及它的用途。

    2024-03-18 15:40:02       40 阅读
  10. Kafka 实现之分配(Distribution)

    2024-03-18 15:40:02       33 阅读
  11. react组件懒加载

    2024-03-18 15:40:02       40 阅读
  12. freemarker if 判断list 中的元素是否为null

    2024-03-18 15:40:02       44 阅读
  13. MySQL模块---安装并配置

    2024-03-18 15:40:02       38 阅读