热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

Linuxvim编辑命令使用总结

1.启动vim编译器vimfilename打开原有的文件或创建一个新文件。vim打开一个新文件,在编辑过程中或结束编辑时再指定文件名。vim?rfilename恢复因意外停机或终端连接中断而未及时保存最终编辑结果的文件。viewfilename以只读方式打开文件。除了不能把

1.     启动vim编译器

vim filename    打开原有的文件或创建一个新文件。

vim                                  打开一个新文件,在编辑过程中或结束编辑时再指定文件名。

vim ?r filename                恢复因意外停机或终端连接中断而未及时保存最终编辑结果的文件。

view filename                   以只读方式打开文件。除了不能把编辑处理的最终结果写入文件保存之外,view的所有编辑功能均与vim无异。

2.     光标定位命令

←↑↓→                        将光标左移、上移、下移或右移一个字符(行)位置。

h j k l       同上。

-                                     光标上移一行。

Enter键(或加号“+”)光标下移一行。

退格键                            将光标左移一个字符位置。

空格键                            将光标右移一个字符位置(命令模式)。

Ctrl+F                             往下(文件结尾方向)滚动一屏。

Ctrl+B                             往上(文件开始方向)滚动一屏。

Ctrl+D                             往下滚动半屏。

Ctrl+U                             往上滚动半屏。

Ctrl+E                             编辑窗口中的文件内容整体上移一行。

Ctrl+Y                             编辑窗口中的文件内容整体下移一行。

w                                     将光标右移一个字。光标停留在下一个字的字首位置。

W                                    将光标右移一个字。光标停留在下一个字的字首位置(即使两个字之间存在标点符号)。

b                                     将光标左移一个字。光标停留在下一个字的字首位置。

B                                     将光标左移一个字。光标停留在下一个字的字首位置(即使两个字之间存在标点符号)。

e                                      把光标移至当前所在字(或下一个字)的最后一个字符位置。

E                                     同上,只是以空格字符作为字的分隔符。

^                                      把光标移至当前行的起始位置,也即当前行的第一个非空白字符位置

0(零)                           同上

$                                      把光标移至当前行的行尾,也即当前行的最后一个字符位置。

H                                     把光标移至编辑窗口顶部第一行的行首位置。

M                                    把光标移至编辑窗口中间一行的行首位置。

L                                     把光标移至编辑窗口底部最后一行的行首位置。

3.     插入文本数据

a                                      在光标当前所在字符位置的后面输入文本数据。

A                                     在光标当前所在行的行尾(也即最后一个字符位置)后面输入文本数据。

i                                       在光标当前所在字符位置的前面输入文本数据。

I                                      在光标当前所在行的行首(也即在第一个非空白的起始字符)前面输入文本数据。

o                                      在光标当前所在行下面的行首位置输入文本数据。

O                                     在光标当前所在行上面的行首位置输入文本数据。

4.     修改文本

C                                     替换当前文本行光标所在字符位置之后的所有数据,以Esc键结束。

cw                                   替换光标当前所在字符位置及之后的整个字或部分字,以Esc键结束。

[n]cc                                替换当前行,或从当前行开始的n行文本,以Esc键结束。

[n]s                                  替换光标当前所在位置的单个字符,或从光标当前位置开始的n个字符,以Esc键结束。

S                                     替换当前行,以Esc键结束。

r                                      替换光标当前所在位置的单个字符。

r                           断行。也可使用“a”或“i”命令加Enter及Esc键实现。

R                                     从光标当前所在的字符位置开始,替换随后的所有字符,直至按下Esc键。

xp                                    交换字符位置。交换光标当前所在位置开始字符位置。

~                                      转换光标当前所在位置字符的大小写。

u                                      撤销最近一次执行的编辑命令,或依次撤销先前执行的编辑命令。

:u                                     同上(ex编辑命令)。

U                                     撤销施与当前文本行的编辑处理。

5.     删除文本

[n]x                                 删除光标当前所在位置的字符,或删除从光标当前位置开始的n个字符。

[n]X                                删除光标当前所在位置的前一个字符,或删除光标当前所在位置之前的n个字符。

dw                                   删除光标当前所在位置的一个整字或部分字符。如果光标在字首,则删除整字。如果光标在字的中间任何位置,则删除光标位置及之后的字符。

[n]dd                                删除光标当前所在的文本行,或删除从当前行开始的n个文本行。

D                                     删除当前文本行从光标位置开始之后的所有字符。

dG                                   删除从当前行开始直至文件最后一行的所有文本行。

d[n]G                               删除从文件的第n行开始直至当前行的所有文本行。

:line#1,line#2 d                  删除从指定的行号line#1到line#2之间的所有文本行。

6.     复制与移动文本

[n]yy                               复制光标当前所在的文本行,或从当前行开始的n个文本行。

[n]Y                                同上。

p(小写)                       把复制或删除(“dd”命令)的文本行粘贴到光标所在行的下面。

P(大写)                       把复制或删除(“dd”命令)的文本行粘贴到光标所在行的上面。

:line#1,line#2 co line#3      把第line#1~line#2行复制到第line#3行之后。

:line#1,line#2 m line#3       把第line#1~line#2行移至第line#3行之后。

7.     设置行号显示

:set nu                              在编辑期间增加临时行号。

:set nonu                           撤销行号显示(默认情况)。

Ctrl+G                              显示当前文件的名字和当前文本行的行号。

8.     设置大小写字母检索准则

:set ic                                检索字符串时忽略字母的大小写。

:set noic                            检索字符串时严格区分字母的大小写(默认情况)。

9.     定位文本行

G                                     将光标移至文件的组后一行。

[n]G                                 将光标移至文件的第n行。

10.  检索与替换

:/string                              向前(文件结尾方向)检索指定的字符串。

:?string 向后(文件开头方向)检索指定的字符串。

n                                      将检索方向找出下一个匹配的字符串。

N                                     逆检索方向找出前一个匹配的字符串。

:[g]/search/s//replace/[g][c] 检索并替换字符串。

11.  清除屏幕

Ctrl+L                              清除因其他进程的输出信息而干扰的编辑窗口。

12.  合并文件与合并行

:r filename                        在光标所在行之后插入指定文件的内容。

: line#1 r filename              在第line#1行之后插入指定文件的内容。

J                                      把相邻的两个文本行个并为一行(把下一行合并到光标当前所在行的后面)。

13. 保存编辑结果与退出vim编辑器

:w                                    保存编辑处理后的结果(把内存缓冲区中的数据写到文件中)。

:w!                                   强制保存编辑处理后的结果。

:wq                                  保存编辑处理后的结果,然后退出vim编辑器。

:wq!                                 强制保存编辑处理后的结果,然后退出vim编辑器。

ZZ                                   保存编辑处理后的结果,然后退出vim编辑器。

:q                                     在未做任何编辑处理时,可以使用此命令退出vim编辑器。

:q!                                    强制退出vim编辑器,放弃编辑处理后的结果。

:w filename                       把编辑处理后的结果写到指定的文件中保存。

:w! filename                      把编辑处理后的结果强制写到指定的文件中保存,即使文件已经存在。

:wq! filename                    把编辑处理后的结果强制写到指定的文件中保存,即使文件已经存在,然后退出vim编辑器。

14.  其他

;f 或 Ctrl+G                     显示文件的名字、编辑状态、文件总的行数、光标当前所在行号和列号,以及当前行之前的行数占整个文件总行数的百分比。

Ctrl+V                              输入控制字符。


推荐阅读
  • 本文详细介绍了Vim编辑器的三种主要模式及其常用命令,帮助用户更好地掌握这一强大的文本编辑工具。 ... [详细]
  • GIMP 2.99.2 发布:UI 采用 GTK3 实现、原生支持高分屏和 Wayland
    开源项目评选最后一周,手里的5票再不用就没用了https:www.oschina.netprojecttop_cn_2020GIMP2.99.2已发布,同时这也标志着GIMP3.0的到来,其中最显著的变化是从GTK2过渡到GTK3工具包。基于 ... [详细]
  • 本文介绍了ArcXML配置文件的分类及其在不同服务中的应用,详细解释了地图配置文件的结构和功能,包括其在Image Service、Feature Service以及ArcMap Server中的使用方法。 ... [详细]
  • 如何使用PyCharm及常用配置详解
    对于一枚pycharm工具的使用新手,正确了解这门工具的配置及其使用,在使用过程中遇到的很多问题也可以迎刃而解,文中有非常详细的介绍, ... [详细]
  • SPSS操作指南:双变量相关性分析的详细步骤
    本教程将详细介绍如何使用IBM SPSS Statistics进行双变量相关性分析。通过实例演示,帮助读者理解变量间的关系及其统计意义。 ... [详细]
  • 在成功安装和测试MySQL及Apache之后,接下来的步骤是安装PHP。为了确保安全性和配置的一致性,建议在安装PHP前先停止MySQL和Apache服务,并将MySQL集成到PHP中。 ... [详细]
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 如何在CAD查看器中同时打开并对比两张DWG图纸
    本文将详细介绍如何使用专业的CAD查看软件,如迅捷CAD看图,来同时打开和对比两张DWG格式的CAD图纸。无论是在设计审核还是项目管理中,掌握这一技能都能显著提高工作效率。 ... [详细]
  • 编写了几个500行左右代码的程序,但基本上解决问题还是面向过程的思维,如何从问题中抽象出类,形成类的划分和设计,从而用面向对象的思维解决问题?有这方面的入门好书吗?最好是结合几个具体的案例分析的 ... [详细]
  • Qt QTableView 内嵌控件的实现方法
    本文详细介绍了在 Qt QTableView 中嵌入控件的多种方法,包括使用 QItemDelegate、setIndexWidget 和 setIndexWidget 结合布局管理器。每种方法都有其适用场景和优缺点。 ... [详细]
  • Ulysses Mac v29:革新文本编辑与写作体验
    探索Ulysses Mac v29,这款先进的纯文本编辑器为Mac用户带来了全新的写作和编辑环境。它不仅具备简洁直观的界面,还融合了Markdown等标记语言的最佳特性,支持多种格式导出,并提供强大的组织和同步功能。 ... [详细]
  • 解决Windows 10开机频繁自检问题的实用方法
    许多用户在使用Windows 10系统时,经常会遇到开机时自动进行磁盘检查的情况。这不仅影响了开机速度,还可能带来不必要的麻烦。本文将详细介绍如何通过简单的注册表修改来避免每次开机时的磁盘自检,提升系统启动效率。 ... [详细]
  • 本文详细介绍了流编辑器sed中的G、H、g、h命令,探讨了它们的工作原理及应用场景。通过实例解析和图解分析,帮助读者掌握这些高级命令的使用方法。 ... [详细]
  • HTML基础入门指南
    本文将深入浅出地介绍HTML的基础知识,包括其定义、开发工具、制定机构、特性、基本标签及更多实用内容。 ... [详细]
  • 本文介绍了解决Oracle 10G数据库中ORA-12541 TNS: no listener错误的详细步骤。该错误通常发生在监听器服务未正确启动或配置不当的情况下,文章将指导您通过检查服务状态、配置注册表和启动监听器来解决问题。 ... [详细]
author-avatar
詹詹洋zy_431
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有