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: 全文件替换 oldnew

复制、剪切和粘贴

  • 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: 保存并退出。
  • :xZZ: 如果需要则保存,并退出 Vim。
  • :q!: 不保存并强制退出。
  • :qa!: 不保存并强制退出所有打开的文件。

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

相关推荐
卷土重去27 分钟前
第 6 章 Linux 实操篇-Vi 和 Vim 编辑器
linux·编辑器·vim
en.en..3 小时前
Linux 孤儿进程与僵尸进程
linux·运维·服务器
一只积极向上的小咸鱼6 小时前
Codex Remote SSH / Dev Container 无限转圈与 GPT-6 可用问题排查总结
运维·gpt·ssh
智塑未来7 小时前
自动化立体库工业无线通信:AGV、AMR、RGV、穿梭车、无人叉车、堆垛机全覆盖
运维·自动化
T1mzhou8 小时前
ARM64 Linux 6.10内核启动流程7-ioremap和readl writel
linux·服务器·c语言
Elastic 中国社区官方博客8 小时前
教程:使用 ES|QL 进行威胁狩猎
大数据·运维·数据库·elasticsearch·搜索引擎·全文检索·安全威胁分析
bwz999@88.com9 小时前
Ubuntu Server 24.04 设置中文
linux·运维·ubuntu
fly-979 小时前
Ubuntu FTP/SFTP 报错:找不到匹配的 hostkey 算法 完整解决
linux·ubuntu
Cx330❀9 小时前
【Linux网络】网络层协议 IP :从网络层原理到 Linux 内核源码
linux·运维·服务器·网络·tcp/ip·ai·ai编程