Linux-编辑器的使用

实验三 Linux编辑器的使用

一、实验目的

学习使用vi编辑器建立、编辑和保存文本文件。

二、实验内容

1.进入和退出vi。

2.Vi不同工作模式的切换。

3.文本文件基本编辑(光标移动、文本输入、复制、移动、删除、查找、替换)。

4.文本文件的保存和备份。

三、主要实验步骤

1.创建一个名为zhangsan2025的目录(实验中,zhangsan替换为你姓名拼音,zs为你姓名拼音首字母,以下皆同),并切换到该目录下完成下边工作。

2.利用vi新建一个名为zs2025的文本文件,输入如下内容,保存并退出。

3.利用vi打开zs2025文件,完成如下操作。

A.设置vi显示行号。

B.选中第一行蓝色文字(就是/Good luck. /这几个字),移动到文档末尾,单独一行。

C.切换到命令模式,将当前文件内容保存成名为zs-temp的备份文件。

D.将绿色文字紧跟其后复制三行。

E.在红色文字之前添加一行,写上学号和姓名拼音。

F.保存文件并退出。

4.利用重定向将当前日期和时间追加到文件zs2025,打开该文件验证是否追加成功。

5.基于zs-temp文件,自己设计实验进行文本多次删除、粘贴、撤销、重复等操作,要求验证vi临时缓冲区和命名缓冲区的使用,并解释vi缓冲区的工作原理。

cpp 复制代码
答:**删除、粘贴、撤销、重复操作
删除操作:使用 dd 删除当前行。
粘贴操作:使用 p 粘贴缓冲区内容。
撤销操作:使用 u 撤销上一步操作。
重复操作:使用 . 重复上一步操作。
验证临时缓冲区和命名缓冲区
临时缓冲区:使用 dd 删除的内容会存放在临时缓冲区,可使用 p 粘贴。
命名缓冲区:使用 "ayy 将当前行复制到命名缓冲区 a,使用 "ap 从命名缓冲区 a 粘贴内容。
vi 缓冲区工作原理
vi 有多个缓冲区,临时缓冲区用于存储最近删除或复制的内容,可直接使用 p 或 P 粘贴。命名缓冲区则允许用户将内容存储到指定的缓冲区,使用时指定缓冲区名称。**

6.利用重定向技术将vi的用户手册文档生成一个test文件,查找文件中是否出现look字符串,并将全文所有的单词options替换为apple,最后保存退出。


7.利用sed命令,打开文件zs2025,但只显示数字开头的行。

8.利用sed命令,删除zs2025文件中重复的行,并保存。

作业三

小明正在实验室台式机Linux系统里,用vi修改上周写的程序文档,已经改了一个小时了,结果实验室停电,电脑突然关闭,文档还没来得及保存。实验室恢复电力供应后,小明能否恢复该文档或者尽可能减少停电带来的损失,如果不能,原因是什么?如果能恢复,该如何恢复?(友情提示:参考课程群共享的某影印版Linux书)

答:小明有可能恢复该文档。vi 在编辑文件时会创建一个交换文件(通常以 .swp 或 .swo 或 .swn

结尾),该文件包含了最近一次保存后对文档所做的修改。

恢复步骤如下:

1.进入文档所在目录,查看是否存在交换文件。例如,如果编辑的文件是 example.txt,则查看是否有 .example.txt.swp 文件。

2.如果存在交换文件,使用 vi -r example.txt 命令尝试恢复文件。

3.按照 vi 的提示操作,选择合适的恢复选项。

如果交换文件已经被删除或者损坏,那么就无法恢复未保存的修改内容。

相关推荐
惊起白鸽4502 分钟前
LVS负载均衡
运维·负载均衡·lvs
Sapphire~1 小时前
Linux-07 ubuntu 的 chrome 启动不了
linux·chrome·ubuntu
伤不起bb1 小时前
NoSQL 之 Redis 配置与优化
linux·运维·数据库·redis·nosql
广东数字化转型2 小时前
nginx怎么使用nginx-rtmp-module模块实现直播间功能
linux·运维·nginx
love530love2 小时前
【笔记】在 MSYS2(MINGW64)中正确安装 Rust
运维·开发语言·人工智能·windows·笔记·python·rust
啵啵学习2 小时前
Linux 里 su 和 sudo 命令这两个有什么不一样?
linux·运维·服务器·单片机·ubuntu·centos·嵌入式
半桔3 小时前
【Linux手册】冯诺依曼体系结构
linux·缓存·职场和发展·系统架构
网硕互联的小客服3 小时前
如何利用Elastic Stack(ELK)进行安全日志分析
linux·服务器·网络·安全
数字芯片实验室3 小时前
寄存器模型生成:从手工到自动化
运维·自动化
冰橙子id4 小时前
linux——磁盘和文件系统管理
linux·运维·服务器