(*长期更新)软考网络工程师学习笔记——Linux操作系统中的vi/vim 编辑器详解(下)

简介: (*长期更新)软考网络工程师学习笔记——Linux操作系统中的vi/vim 编辑器详解

四、行编辑器


行编辑器与屏幕编辑器最大的区别是,屏幕编辑器是对每一个字符进行编辑的,而行编辑器每一条编辑命令所针对的编辑单位是行,即一行进行编辑。


有的地方将行编辑器也称作底线命令模式,由于两种工作模式是可以切换的,所以常将命令模式、输入模式和底线命令模式一起归纳,如下表是这三种模式的进入和退出方法:

名称 进入方法 退出方法
命令模式 一开始使用该命令即进入该模式 输入:wq,即可保存并退出
输入模式 在命令模式下按下i 通过ESC键,退出至命令模式
底线命令模式 在命令模式下按下: :vi命令回车Enter键结束通过,退出至命令模式


(一)进入行编辑器


1、通过屏幕编辑器进入


由于行编辑器和屏幕编辑器是可以切换的,所以在vi屏幕编辑器的命令模式下通过输入:即可进入行编辑器,如下可看到我们可在“:”后输入字母、数字、符号等等:

1667191622509.jpg


2、从终端进入


另外也可以通过ex后跟文件名称的方式来进入行编辑器,如下:

ex filename


例如通过ex行编下编辑位于/tmp目录下的myfile文件:

[yyx@192 ~]$ ex /tmp/myfile


在Linux终端输入命令,进入行编:

1667191652216.jpg


(二)退出行编辑器


1、退回至屏幕编辑器


在行编辑器下,即在:后面输入vi即可返回至屏幕编辑器的命令模式,如下:

1667191667474.jpg

然后回车即可返回命令模式,光标停留在行编处理的最后一行的下一行的行首:

1667191681623.jpg


2、退出vi编辑器


(1)通过在:后面输入wq,即可写回(覆盖)原文件,并退出vi编辑器;

(2)在:后面输入q,退出vi编辑器;

(3)在:后面输入q!,强行退出vi编辑器(不写文件);


(三)行编的常用命令


1、:n,表示将第n行作为当前编辑行,例如目前当前行是第一行:

1667191760594.jpg

通过在:后跟2,即代表将第2行作为当前编辑行,输入:2,回车:

1667191776701.jpg

可见当前编辑行光标已移动至第二行行首:

1667191789199.jpg

2、:np,表示显示第n行的内容,并将第n行作为当前行,例如:

1667191800588.jpg

可见第二行的内容显示在下方,且当前光标已切换至第二行行首:

1667191812847.jpg

3、:m,np,表示显示第m行至第n行的内容,并将第n行作为当前行,例如:

1667191824253.jpg

显示第二行至第四行的内容,并将第四行作为当前光标所在行:

1667191836140.jpg

光标位于第四行:

1667191848910.jpg

4、删除操作

(1):d,表示删除当前行的内容;

(2):nd,表示删除第n行的内容,删除后将当前的第n行作为当前光标所在行;

(3):m,nd,表示删除第m行至第n行的内容,删除后将当前的第n行作为当前光标所在行;

5、:a,表示在当前行的下一行输入文本,直到按Esc键为止。

6、替换操作

(1):s/string1/string2/,表示将当前行的第一个字符串string1替换成字符串string2;

(2):m,ns/string1/string2/g,表示把从第m行到第n行中所有字符串string1都替换成字符串string2。

7、(1):r filename,在当前行的后面附加文件名称为filename的文件内容;

(2):nr filename,在第n行的后面附加文件名称为filename的文件内容。

8、(1):w filename,写到文件名称为filename,不退出;

(2):w!filename,强制执行写到文件名称为filename,不退出。


五、vi命令的其他常用选项


(一)恢复上次的编辑副本

vi -r filename


vi后跟-r参数可以对修改过但因意外中断而未保存的文件名称为filename的文件读入编辑缓冲区,使编辑工作继续进行。


(二)设置加密文件

vi -x filename


vi后跟-x参数可对文件名称为filename的加密文件经过输入密码后进行编辑。

例如现在对一个没加密的文件设置密码并编辑该文件,如下命令:

[yyx@192 ~]$ vi -x /tmp/myfile


在Linux终端输入命令:

1667191911896.jpg

这里会提示再输入一次密码:

1667191924965.jpg

设置好密码后,进入vi编辑器然后保存,再次编辑该文件时就要使用密码才能进入:

1667191932425.jpg

相关文章
|
4天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
16 2
|
2月前
|
安全 Linux 网络安全
Web安全-Linux网络协议
Web安全-Linux网络协议
76 4
|
22天前
|
运维 监控 网络协议
|
4天前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
23 5
|
26天前
|
Ubuntu Linux 虚拟化
Linux虚拟机网络配置
【10月更文挑战第25天】在 Linux 虚拟机中,网络配置是实现虚拟机与外部网络通信的关键步骤。本文介绍了四种常见的网络配置方式:桥接模式、NAT 模式、仅主机模式和自定义网络模式,每种模式都详细说明了其原理和配置步骤。通过这些配置,用户可以根据实际需求选择合适的网络模式,确保虚拟机能够顺利地进行网络通信。
|
1月前
|
网络协议 安全 Ubuntu
Linux中网络连接问题
【10月更文挑战第3天】
32 1
|
1月前
|
监控 Linux 测试技术
Linux系统命令与网络,磁盘和日志监控总结
Linux系统命令与网络,磁盘和日志监控总结
55 0
|
1月前
|
监控 Linux 测试技术
Linux系统命令与网络,磁盘和日志监控三
Linux系统命令与网络,磁盘和日志监控三
38 0
|
2月前
|
机器学习/深度学习 安全 网络协议
Web安全-Linux网络命令
Web安全-Linux网络命令
32 1
|
2月前
|
网络协议 Linux
Linux 网络配置
了解基本命令与权限后,如何让Linux系统联网?可通过编辑`/etc/sysconfig/network-scripts/`下的`ifcfg-ethX`文件配置网卡,其中`ethX`代表第X块网卡。对于DHCP自动获取或静态IP,需设置`BOOTPROTO`参数,并指定IP、子网掩码和网关等。配置完成后,运行`/etc/init.d/network restart`重启网络。DNS可在`/etc/resolv.conf`中设置,添加`nameserver`行即可,无需重启网卡。配置好后,可用`ifconfig`查看IP信息,并通过远程工具如SecureCRT连接服务器。
74 0