vi常用命令

vi常用命令[toc]一、关于vi==========vi是最强大的文本编辑器,没有之一。尽管vi已经是古董级的软件,但还是有无数新人迎着困难去学习,可见其经典与受欢迎的程度。无论是小说中还是电视剧,真

大家好,又见面了,我是你们的朋友全栈君。

一、关于vi

vi是最强大的文本编辑器,没有之一。尽管 vi已经是古董级的软件,但还是有无数新人迎着困难去学习,可见其经典与受欢迎的程度。

无论是小说中还是电视剧,真正强大的武器都不容易驾驭,需要付出一些努力才能收获到更加强大的力量,对于vi这上古神器说更是如此。由于它全程使用键盘操作,很多首次接触
vi的人会觉得不习惯而中途放弃。然而,坚持下来的朋友就会渐渐地发现这种键盘操作的设计绝妙,经典之所以能成为经典,必然有它的道理,不用解释太多。

观察一个程序员对vi的熟练程度,可以判断它的技术水平,如果他对vi不熟悉,就肯定不是Linux平台下的程序员,说vi不好用的人也肯定不熟悉vi和Linux,没有例外。

二、创建/打开文件

vi 文件名

打开一个文件,如果文件不存在,就创建它。

示例:

vi book.c

三、vi的三种模式

vi
有三种模式,命令行模式、插入模式和替换模式,在命令行模式下,任何键盘输入都是命令,在插入模式和替换模式下,键盘输入的才是字符。

插入模式和替换模式也合称为编辑模式。

四、vi的常用命令

Esc 从编辑模式切换到命令行模式。

i 在光标所在位置前面开始插入。

a 在光标所在的位置后面开始插入。

o 在光标所在位置行的下面插入空白行。

O 在光标所在位置行的上面插入空白行。

I 在光标所在位置行的行首开始插入。

A 在光标所在位置行的行末开始插入。

k 类似方向键上。

j 类似方向键下。

h 类似方向键左。

l 类是方向键右。

Ctrl+u 向上翻半页。

Ctrl+d 向下翻页。

nG 光标跳到文件的第n行行首。

G 光标跳到文件最后一行。

:5回车 光标跳到第5行。

:n回车 光标跳到第n行。

0 光标跳到当前行的行首。

$ 光标跳到当前行的行尾。

w 光标跳到下个单词的开头。

b 光标跳到上个单词的开头。

e 光标跳到本单词的尾部。

x 每按一次,删除光标所在位置的一个字符。

nx 如”3x”表示删除光标所在位置开始的3个字符。

dw 删除光标所在位置到本单词结尾的字符。

D 删除本行光标所在位置后面全部的内容。

dd 删除光标所在位置的一行。

ndd 如”3dd”表示删除光标所在位置开始的3行。

yy 将光标所在位置的一行复制到缓冲区。

nyy 将光标所在位置的n行复制到缓冲区。

p 将缓冲区里的内容粘贴到光标所在位置。

r 替换光标所在位置的一个字符 replace。

R 从光标所在位置开始替换,直到按下”Esc”。

cw 从光标所在位置开始替换单词,直到按下”Esc”。

u 撤销命令,可多次撤销。

J 把当前行的下一行接到当前行的尾部。

Ctrl+g 显示光标所在位置的行号和文件的总行数。

/abcd 在当前打开的文件中查找“abcd”文本内容。

n 查找下一个。

N 查找上一下。

. 重复执行上一次执行的vi命令。

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

列操作

Ctrl+V 光标上或下 大写的I 输入内容 Esc

:w回车 存盘。

:w!回车 强制存盘。

:wq回车 存盘退出。

:x回车 存盘退出。

:q回车 不存盘退出。

:q!回车 不存盘强制退出。

:g/aaaaaaaaa/s//bbbbbb/g回车 把文件中全部的aaaaaaaaa替换成bbbbbb。

Ctl+insert 复制鼠标选中的文本,相当于Ctl+c。

Shift+insert 输出鼠标选中的文本,相当于Ctl+v。

以上两个命令在windows和UNIX中是通用的。

五、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

来源:C语言技术网(www.freecplus.net)

作者:码农有道

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155112.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 如何打开sln文件并显示窗口_在.sln文件中设置Visual Studio默认启动项目的简单方法…[通俗易懂]

    如何打开sln文件并显示窗口_在.sln文件中设置Visual Studio默认启动项目的简单方法…[通俗易懂]昨天在一台电脑上用git新签出一个项目进行build,却出现一堆编译错误,而在原先的开发机上build无任何错误。对比分析后发现,开发机上VS的启动项目(startupproject)与这台电脑上的不一样,改为一样后,build立马成功。看来问题与msbuild编译VS项目的顺序有关,而哪个项目作为启动项目会影响到这个编译顺序。要避免这个问题,就要保证git签出的VS解决方案的启动项目是一致的,…

    2022年6月9日
  • RePlugin集成AndroidAutoSize

    RePlugin集成AndroidAutoSize一、屏幕适配你可能会问“都2021年了还折腾屏幕适配?直接用dp单位适配不好吗?”,确实,如果公司的UI设计师、产品经理以及老板,能明白为什么一套UI在不同设备上显现出来的一些差异并不是bug时,开发者直接用dp单位配合一些布局技巧来进行适配是可以的,但是,实现多数情况下并不是如此美好,他们更希望看到的是UI在不同屏幕上,仅仅只是缩放的区别,为了满足这种要求,应用第三方屏幕适配方案就非常有必要了。根据在网上查到的比较好的原生屏幕适配方案有两种:smallestWidth

    2022年6月6日
  • Buck的振铃实验与分析

    Buck的振铃实验与分析上上期我们提到了buck电路的开关的振铃波形,本质原因是LC的阻尼振荡。文章偏理论,那BUCK到底是怎么产生尖峰振荡呢?要想把这个问题搞清楚,也很是不容易,所以文章有点长,请直接点赞转发加收藏。问题本期主要分析以下这两个问题:1、死区时间是什么?这里有个小台阶是什么情况?2、上下尖峰振荡是如何产生的?跟哪些因素有关?理想的BUCK的SW波形我们由浅入深,一步一步来,先看理想的开关SW波形—没有尖峰电压的波形。为了能更好的看buck电路各个点的电压电流情况.

    2022年10月23日
  • 如何修改redis的端口号_redis配置文件详解

    如何修改redis的端口号_redis配置文件详解redis修改默认端口的方法是:首先要先下载文件并解压编译及安装,安装好后全局启动并且设置密码,然后再修改端口号,最后指定运行配置即可【推荐课程:redis教程】(1)通过下面的链接进行下载,然后再用以下命令进行,解压,编译,安装下载地址:http://download.redis.io/redis-stable.tar.gztarxzfredis-4.0.9.tar.gzcdredis-4…

    2022年9月18日
  • Redis主从复制原理

    Redis主从复制原理

    2021年4月10日
  • MyBatis-Plus 分页查询以及自定义sql分页

    MyBatis-Plus 分页查询以及自定义sql分页一、引言分页查询每个人程序猿几乎都使用过,但是有部分同学不懂什么是物理分页和逻辑分页。物理分页:相当于执行了limit分页语句,返回部分数据。物理分页只返回部分数据占用内存小,能够获取数据库最新的状态,实施性比较强,一般适用于数据量比较大,数据更新比较频繁的场景。逻辑分页:一次性把全部的数据取出来,通过程序进行筛选数据。如果数据量大的情况下会消耗大量的内存,由于逻辑分页只需要读取数据库…

    2022年6月26日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号