Linux中vim常用的命令

Linux中vim常用的命令

Vim 是一个功能丰富的文本编辑器,拥有大量的命令和快捷键。下面是一个更全面的列表,这些都是在普通模式下使用的命令:

光标移动

  • h: 向左移动光标。
  • j: 向下移动光标。
  • k: 向上移动光标。
  • l: 向右移动光标。
  • w: 跳到下一个单词的开头。
  • b: 跳到上一个单词的开头。
  • e: 跳到下一个单词的结尾。
  • 0: 跳到当前行的开头。
  • ^: 跳到当前行的第一个非空白字符。
  • $: 跳到当前行的结尾。
  • H: 跳到屏幕顶部的行。
  • M: 跳到屏幕中部的行。
  • L: 跳到屏幕底部的行。
  • gf: 打开光标下的文件名对应的文件。

滚动

  • Ctrl + u: 向上滚动半屏。
  • Ctrl + d: 向下滚动半屏。
  • Ctrl + b: 向上滚动一屏。
  • Ctrl + f: 向下滚动一屏。
  • zt: 将当前行移至窗口顶部。
  • zz: 将当前行移至窗口中间。
  • zb: 将当前行移至窗口底部。

查找和替换

  • /pattern: 向下搜索 pattern。
  • ?pattern: 向上搜索 pattern。
  • n: 重复上一次搜索,向下或者向上。
  • N: 反方向重复上一次搜索。
  • :%s/old/new/g: 全文件替换 old 为 new。

复制、剪切和粘贴

  • v: 进入可视模式,可以选择文本。
  • V: 进入可视行模式,选择整行文本。
  • Ctrl + v: 进入可视块模式,选择矩形块文本。
  • y: 复制选择的文本。
  • d: 删除选择的文本。
  • Y: 复制当前行(等同于 yy)。
  • D: 删除到行尾(等同于 d$)。
  • c: 删除选择的文本并进入插入模式。
  • C: 删除到行尾并进入插入模式(等同于 c$)。

撤销、重做和重复

  • u: 撤销上次操作。
  • Ctrl + r: 重做被撤销的操作。
  • .: 重复上次的修改命令。

文本编辑

  • r: 替换光标下的字符。
  • R: 进入替换模式,直到按 Esc 退出。
  • s: 删除光标下的字符并进入插入模式。
  • S: 删除当前行并进入插入模式(等同于 cc)。

标记和跳转

  • m<letter>: 对当前位置做标记,<letter> 是任意字母。
  • '<letter>: 跳转到 m<letter> 做的标记位置。

分屏和标签页

  • :split 或 :sp: 水平分割窗口。
  • :vsplit 或 :vsp: 垂直分割窗口。
  • Ctrl + w followed by arrow key: 在窗口间移动光标。
  • :tabnew 或 :tabnew <filename>: 打开新标签页或在新标签页中打开文件。
  • gt 或 :tabnext: 切换到下一个标签页。
  • gT 或 :tabprev: 切换到上一个标签页。

退出和保存

  • :w: 保存文件。
  • :wa: 保存所有打开的文件。
  • :q: 退出 Vim。
  • :qa: 退出所有打开的文件。
  • :wq: 保存并退出。
  • :x 或 ZZ: 如果需要则保存,并退出 Vim。
  • :q!: 不保存并强制退出。
  • :qa!: 不保存并强制退出所有打开的文件。

要注意的是,Vim 的命令可以组合,提供了极高的灵活性和强大的编辑功能。例如,d3w 将会删除从光标位置开始的接下来三个单词。这些只是常用命令的一部分,Vim 还有更多高级功能(如宏录制、文本格式化、插件扩展等)等待发掘。

相关推荐
时间售卖铺3 分钟前
Nginx 反向代理
运维·nginx·云原生
life码农4 分钟前
Nginx location 优先级详解:匹配规则、修饰符与完整代码示例
运维·nginx
别动我齐刘海20 分钟前
机器人 C++ / 系统联调补强2——异常处理、Protobuf
linux·c++·人工智能·学习·算法·机器学习·机器人
Lsetea23 分钟前
curl -I检查HTTPS返回405:HEAD、GET与证书验收分层排查
linux·http·https·ssl证书·curl
我命由我1234529 分钟前
Python 开发 - Python 虚拟环境
运维·开发语言·后端·python·http·https·java-ee
dlhto38 分钟前
Windows 使用 Rufus 制作 AlmaLinux 10.2 启动 U 盘:从 ISO 下载到服务器安装
运维·服务器·windows
一直C40 分钟前
嵌入式 Linux 驱动开发学习笔记:内核定时器、platform 总线与 I²C 驱动
linux·驱动开发·嵌入式硬件·学习·imx6ull
软件派42 分钟前
Beam.Win 自动化办公与业务流程提效指南
运维·自动化
承渊政道1 小时前
Linux网络学习【传输层协议UDP】
linux·网络·网络协议·学习·ubuntu·udp
雯宝1 小时前
usb_serial_init/tty_driver/alloc_tty_driver/tty_register_driver/usb_register
linux