linux编辑器-vim

一、基本概念

vim有很多模式但是有三个重要的模式分别是命令模式、插入模式、低行模式。

  1. 命令模式:控制光标移动、字符、字或行的删除、移动、复制等。
  2. 插入模式:只有在该模式下才可以进行文字输入。
  3. 低行模式:文件的保存或退出,也可以进行文件替换,查找文字,列出行号等操作。

二、基本操作

输入 vim 文件名 即可进入vim全屏编辑画面:此时模式是命令模式,只有进入插入模式才能够输入文字。

三种模式的转换:

1、命令模式切换为插入模式:

  • 输入 a
  • 输入i
  • 输入o

2、插入模式切换为命令模式

按一下【ESC】

3、命令模式切换到低行模式

输入 :

4、退出vim及保存

  • 退出不保存:处于低行模式时输入 q!
  • 保存不退出:处于低行模式时输入 w
  • 退出并保存:处于低行模式时输入 wq

三、vim命令模式的命令集

1、插入模式

  • 【i】:进入插入模式,从当前光标位置开始输入。
  • 【a】:进入插入模式,从光标的下一个位置输入。
  • 【o】:进入插入模式,插入新的一行,从行首开始输入。

2、移动光标

  • 【h】:光标左移一格
  • 【j】:光标下移一格
  • 【k】:光标上移一格
  • 【l】:光标右移一格
  • 【G】:光标移动到最后
  • 【$】:光标移动到行尾
  • 【^】:光标移动到行首
  • 【w】:光标跳到下一个字的开头
  • 【e】:光标跳到下一个字的结尾
  • 【b】:光标回到上一个字的开头
  • 【#l】:光标向后移动#个位置
  • 【gg】:进入到文本开始的位置
  • 【B】:屏幕往后移动一页
  • 【F】:屏幕往前移动一页
  • 【U】:屏幕往后移动半页
  • 【D】:屏幕往前移动半页
  • 【坤+g】:列出光标所在行的行号
  • 【#G】:移动光表到第#行

3、删除文字

  • 【x】:删除光标所在位置的一个字符
  • 【#x】:删除光标所在位置后#个字符
  • 【X】:删除光标所在位置前一个字符
  • 【#X】:删除光标所在位置前面#个字符
  • 【dd】:删除光标所在行
  • 【#dd】:从光标所在行向后删除#行

4、复制

  • 【yw】:讲光标所在位置到字尾的字符复制到缓冲区
  • 【#yw】:复制#个字到缓冲区
  • 【yy】:复制光标行到缓冲区
  • 【#yy】:复制光标行以及下面的#行复制到缓冲区
  • 【p】:将缓冲区的内容粘贴到光标所在位置

5、替换

  • 【r】:替换光标所在位置的字符
  • 【R】:替换光标所到之处的字符,按【ESC】退出

6、撤销和恢复

  • 【u】:撤回上一次的操作
  • 【坤+r】:恢复上一次撤回的操作

7、更改

  • 【cw】:将光标所在处的字改到字尾
  • 【c#w】:将光标所在处的#个字改到字尾

四、vim低行模式的命令集

确保自己处于命令模式,再按【:】即可进入低行模式

  1. 【set nu】:每行前面都会出现行号
  2. 【#】:跳到文件的第#行
  3. 【w】:保存文件
  4. 【q!】:退出不保存
  5. 【wq】:保存并退出
  6. 【/关键字】:从光标位置开始向下查找关键字,按【n】可以进入下一个关键字
  7. 【?关键字】:从光标位置开始向上查找关键字,按【n】可以进入下一个关键字
相关推荐
zew10409945885 分钟前
PyCharm【2023.2.5】下使用编辑器自带的连接功能,连接MySQL数据库
数据库·mysql·pycharm·编辑器·连接mysql
java小吕布6 分钟前
CentOS 7 服务器性能监控实战指南
linux·服务器·centos
椰子今天很可爱10 分钟前
仿照muduo库实现一个高并发服务器
linux·服务器·c++
Xの哲學7 小时前
Linux grep命令:文本搜索的艺术与科学
linux·服务器·算法·架构·边缘计算
夜月yeyue7 小时前
Linux 调度类(sched_class)
linux·运维·c语言·单片机·性能优化
VekiSon8 小时前
Linux系统编程——IPC进程间通信:信号通信与共享内存
linux·运维·服务器
南山nash8 小时前
CentOs7 安装 Docker 详细步骤
linux·运维·docker·容器
徐先生 @_@|||8 小时前
Conda最基础使用命令
linux·windows·conda
wdfk_prog9 小时前
[Linux]学习笔记系列 -- [fs][drop_caches]
linux·笔记·学习
咩咩大主教9 小时前
VSCode远程连接Linux部署的Docker
linux·vscode·docker