vim的基本操作

一、Vim的三种模式

Vim主要有三种操作模式:

1. 正常模式(Normal Mode)

  • 默认模式,用于执行大部分命令,如移动光标、删除、复制和粘贴文本等。
  • 常用导航键:h(左)、j(下)、k(上)、l(右),以及w(向前移动一个词)、b(向后移动一个词)等。

2. 插入模式(Insert Mode)

  • 在此模式下,可以输入文本。
  • 进入方式:在正常模式下按i(在光标前插入)、a(在光标后插入)、I(在当前行开头插入)、A(在当前行末尾插入)、o(在当前行下方插入新行并进入插入模式)、O(在当前行上方插入新行并进入插入模式)等。
  • 退出方式:按Esc键。

3. 命令行模式(Command-Line Mode)

  • 在此模式下,可以执行保存、退出、搜索、替换等命令。
  • 进入方式:在正常模式下按:(冒号)。
  • 常用命令::w(保存文件)、:q(退出Vim)、:wq:x(保存并退出)、/word(向下搜索单词)、?word(向上搜索单词)等。

二、常见操作

  1. 复制和粘贴

    • 复制整行:yy
    • 复制多行:nyy(n为行数)。
    • 粘贴:p(在光标下一行粘贴)、P(在光标上一行粘贴)。
  2. 删除

    • 删除字符:x
    • 删除整行:dd
    • 删除从光标位置到行末的文本:D
    • 删除指定行范围的文本::n1,n2d(n1到n2为行号)。
  3. 查找和替换

    • 查找:在正常模式下按/进入搜索模式,输入要搜索的文本,按Enter键开始搜索。使用n键移动到下一个匹配项,N键移动到上一个匹配项。
    • 替换::s/old/new/g(将当前行的第一个old替换为new,并全局替换该行的所有old)。:%s/old/new/g(在整个文件中进行全局替换)。
  4. 文件操作

    • 打开文件:vim filename
    • 保存文件::w(保存)、:wq:x(保存并退出)。
    • 退出Vim::q(如果文件已修改,会提示是否保存)。
  5. 多窗口操作

    • 水平分割窗口::sp [filename](打开一个新窗口,显示新文件或相同文件)。
    • 垂直分割窗口::vsp [filename](Vim 8.0及以上版本支持)。
    • 在窗口间切换:Ctrl + w + j(向下)、Ctrl + w + k(向上)、Ctrl + w + h(向左)、Ctrl + w + l(向右)。
  6. 屏幕滚动

    • 向上滚动半屏:Ctrl + u
    • 向下滚动半屏:Ctrl + d
    • 向上滚动一屏:Ctrl + b
    • 向下滚动一屏:Ctrl + f
  7. 设置和显示行号

    • 显示行号::set number(临时显示)、在~/.vimrc文件中添加set number(永久显示)。
    • 取消行号显示::set nonumber
  8. 撤销和重做

    • 撤销:u
    • 重做:Ctrl + r

上述只是其中的一部分常见操作。

相关推荐
奔跑吧 android1 小时前
【linux kernel 常用数据结构和设计模式】【数据结构 2】【通过一个案例属性list、hlist、rbtree、xarray数据结构使用】
linux·数据结构·list·kernel·rbtree·hlist·xarray
NiKo_W3 小时前
Linux 文件系统与基础指令
linux·开发语言·指令
Darkwanderor5 小时前
Linux 的权限详解
linux
SabreWulf20205 小时前
Ubuntu 20.04手动安装.NET 8 SDK
linux·ubuntu·avalonia·.net8
不是吧这都有重名5 小时前
为什么ubuntu大文件拷贝会先快后慢?
linux·运维·ubuntu
sunshine-sm5 小时前
CentOS Steam 9安装 Redis
linux·运维·服务器·redis·centos
小熊h6 小时前
MySQL集群高可用架构——组复制 (MGR)
linux·数据库·mysql
棒棒的唐6 小时前
armbian平台ubuntu环境下telnet安装及启动,给pantherX2增加一个应急通道
linux·运维·armbian·telnetd
bug攻城狮6 小时前
CentOS 7 设置静态 IP 地址
linux·tcp/ip·centos
纳切威6 小时前
CentOS 7部署Zabbix5.0
linux·运维·centos·zabbix