Linux的Vim编辑器

Linux的Vim编辑器

Vim的基本使用

在Linux中,很多时候需要使用编辑器来修改文件,使用最多的编辑器就是vim,用法如下。

vim /path/file

如果这个文件不存在,则会在内存中创建出来,与在 Windows中单击【开始】→【所有程序】→【记事本】的功能相同,只是在内存中打开,并没有存储在硬盘上。如果文件存在,则把此文件打开。
环境准备的命令如下。

[root@rh1 ~]# head /etc/passwd > aa.txt

先创建一个测试文件aa.txt,这里的意思是把/etc/passswd前10行的内容写入 aa.txt中。然后执行vim aa.txt命令打开此文件

[root@rh1 ~]# vim aa.txt

在这里插入图片描述

此时会发现按【Enter】键不会产生空白行,按【Backspace】键也不会删除任何字符,即现在无法编辑。这里就涉及了vim的三种模式。

Vim几种模式的切换

1.插入模式

用vim打开文件时,是在命令模式下,如果想修改文件内容,需要进入插入模式(也称为编辑模式)。从命令模式切换到插人模式,有6个常见的字符。

(1)i:从当前光标所在字符处插入。
(2)a:从当前光标的后一个字符处插入。
(3)o:在当前行的下一行产生一个空白行并进入插入模式。
(4)I:光标跳到本行的开头,并进入插入模式。
(5)A:光标跳到本行的结束,并进入插入模式。
(6)O:在当前行的上一行产生一个空白行并进入插入模式。

以看到,光标仍然是在r上面的(这就叫作从当前光标所在字符插人),左下角显示为“插入”或“insert”,此时就进入插入模式了。

在这里插入图片描述

用上、下、左、右键调整光标到合适的位置之后,把光标放在r的位置。按【 i 】键进入插入模式。

修改完成之后需要对文件进行保存,在插入模式下是无法保存的,必须进入末行模式才可
以。需要按【Esc】键退回到命令模式,然后从命令模式进入末行模式

在这里插入图片描述

2.末行模式

从命令模式进入末行模式有两种方式。
1./ 关键字
这种一般用于在文件中查询所有的关键字,如果想忽略大小写可以用

“/关键字\c”。

例如,在passwd中查询所有的root,先按【/】键,然后在后面输入“root”

在这里插入图片描述

此刻会高亮显示所有的关键字root,不过可以看到ROOT和Root并没有高亮显示出来,因为在 Linux中是严格区分大小写的,如果想忽略大小写,可以写成/root\c

在这里插入图片描述

但是此时被高亮显示:如果想去掉,可以随意输入一个字符串, 然后按【Enter】键

2.1.命令模式下按冒号

在命令模式下按冒号。这里可以执行各种操作,总结如下。

(1) 保存但不退出::w
(2) 保存退出::wq
(3)保存退出::x(小写)。
(4)另存为::w /path/new-name。
(5)加载其他文件::r /path/text-file。
(6)显示行号::set nu,如图5-11所示。
(7)去除行号::set nonu。

(8)切换行::数字,这样光标可以快速切换到指定的行。
(9)替换操作:语法如下。

:s/old/new/

3.命令模式

要想从末行模式切换到命令模式,只要按两次【Esc】键即可

一开始在命令模式下无法做具体的操作(无法删除,按【Enter】键也没用),其实在命令模式下也可以微许多操作。

3.1复制行

nyy (n为数字)表示从当前行开始,一共复制n行。

如图所示,把光标调整到第6行,此时按【3yy】键,就会把6、7、8三行复制下来。

在这里插入图片描述

3.2粘贴行

整光标到指定的行之后,按【p】键执行粘贴操作。例如,这里在第10行即 shutdown那行按【p】键,

在这里插入图片描述

自行按【u】键撤销

3.3剪切行

ndd (n为数字)表示从当前行开始,一共剪切n行,用法与nyy类似。
但是如果不按【p】键粘贴,则这几行就是删除的意思。
如果想把从当前行开始到最后一行全部删除,可以按【dG】键或随便按一个比较大的数字,然后按【dd】键,如【9999dd】。

3.4删除字符

在光标所在的字符位置按【x】键,就可以删除此字符。如果想删除当前光标往后所有的字符,可以按一个比较大的数字,然后按【x】键,如【9999x】。

3.5定位行

按【nG】键(n为数字),光标跳到第n行。如果想切换到最后一行,直接按【G】键。如果想跳到第一行,直接按【gg】键。(6)替换。

3.6替换

如果想替换当前光标的字符,先按【r】键,然后按所要替换的字符就可以了。

按小写的【r】键只是做一次替换,如果想再替换其他字符,还需要按【r】键才行。如果想一直处于替换状态,则需要按大写的【R】键,这样当替换当前字符之后,光标会跳到下一个字符并处于替换状态,我们可以通过调整光标来替换所要替换的字符,直到按【Esc】键结束

3.7撤销

如果编辑错了,可以按【u】键撤销,类似于 Word中的撤销操作。

3.8前进。

键,这样当替换当前字符之后,光标会跳到下一个字符并处于替换状态,我们可以通过调整光标来替换所要替换的字符,直到按【Esc】键结束

3.7撤销

如果编辑错了,可以按【u】键撤销,类似于 Word中的撤销操作。

3.8前进。

前进符,按【Ctrl+R】组合键 。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值