当前位置: 首页 > article >正文

Linux常用工具的使用(2):文本编辑器的使用

实验题目:Linux常用工具的使用(2):文本编辑器的使用

实验目的

(1)理解文本编辑器vi的工作模式;

(2)掌握文本编辑器的使用方法

实验内容

(1)阐述vi编辑器的3种工作模式,以及如何实现工作模式的互相转换?

(2)在文本编辑器vi中,实现下列功能,列举出一个例子即可:

     1)添加单个字符、多个字符

     2)删除单个字符、删除整行文本

     3)文本的替换

     4)文本的复制和粘贴

     5)文本的剪切和粘贴

     6)全文关键字查找

     7)全文字符串替换

     8)保存、另存为、退出

     9)同时打开两个文件,实现两个窗口的切换

     10)区域复制

     11)与shell交互

实验步骤

(1)阐述vi编辑器的3种工作模式,以及如何实现工作模式的互相转换?

vi编辑器有3种基本工作模式,分别是:

  1. 命令模式:这是进入vi编辑器后的默认模式。在该模式下,用户可以输入vi命令来管理自己的文档。此时从键盘上输入的任何字符都被当作编辑命令来解释。若输入的字符是合法的vi命令,则vi在接受用户命令之后完成相应的动作。但需要注意的是,所输入的命令并不回显在屏幕上。若输入的字符不是vi命令,vi会响铃报警。任何时候,不管用户处于何种模式,按下Esc键即可进入命令模式。
  2. 文本输入模式:在命令模式下输入插入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被vi当作文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按Esc键即可。
  3. 末行模式:也称ex转义模式。在命令模式下,用户按“:”键即可进入末行模式下,此时vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的说明符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令在执行完后,vi自动回到命令模式。

工作模式的互相转换

  • 从命令模式切换到文本输入模式:输入i(插入)、a(附加)、o(打开新行)等命令。
  • 从文本输入模式切换回命令模式:按Esc键。
  • 从命令模式切换到末行模式:按“:”键。
  • 从末行模式切换回命令模式:执行完末行命令后,vi会自动回到命令模式,或者按Esc键退出末行模式。

(2)在文本编辑器vi中,实现下列功能,列举出一个例子即可:

  1. 添加单个字符、多个字符:
    • 在命令模式下,按i进入文本输入模式,然后输入单个字符或多个字符。
  2. 删除单个字符、删除整行文本:
    • 删除单个字符:在命令模式下,将光标移动到要删除的字符上,按x键。
    • 删除整行文本:在命令模式下,按dd键删除当前行。
  3. 文本的替换:
    • 在命令模式下,按r键,然后输入要替换的字符。或者进入末行模式,使用:s/old/new/g命令替换当前行中所有出现的old为new。
  4. 文本的复制和粘贴:
    • 复制:在命令模式下,按yy复制当前行,或按nyy复制从当前行开始的n行。
    • 粘贴:在命令模式下,按p键将复制的内容粘贴到当前行的下一行。
  5. 文本的剪切和粘贴:
    • 剪切:实际上,删除操作(如dd)也会将文本剪切到缓冲区中。
    • 粘贴:与上述复制后的粘贴操作相同,按p键。
  6. 全文关键字查找:
    • 在命令模式下,按/键,然后输入要查找的关键字,按Enter键开始查找。
  7. 全文字符串替换:
    • 在末行模式下,使用:%s/old/new/g命令替换整个文件中所有出现的old为new。
  8. 保存、另存为、退出:
    • 保存:在末行模式下,输入:w命令。
    • 另存为:在末行模式下,输入:w newfilename命令。
    • 退出:在末行模式下,输入:q命令。如果文件有未保存的更改,vi会提示保存更改。强制退出不保存可以使用:q!命令。
  9. 同时打开两个文件,实现两个窗口的切换:
    • 在命令行中使用vi -O filename1 filename2命令同时打开两个文件,它们会在垂直分割的窗口中显示。使用Ctrl+w w命令在两个窗口之间切换。
  10. 区域复制:
    • 在命令模式下,使用V(行选择)或Ctrl+v(块选择)命令选择区域,然后按y键复制选择的区域。
  11. 与shell交互:
    • 在末行模式下,使用:!command命令执行shell命令。例如,输入:!ls列出当前目录的内容。

实验体会:

        通过本次实验,我深入理解了vi编辑器的工作模式,并掌握了vi编辑器的使用方法。我能够熟练地在vi编辑器中进行文本的添加、删除、替换、复制、粘贴、查找和替换等操作,同时也学会了如何保存文件、退出编辑器以及同时打开多个文件进行编辑。此外,我还了解了如何在vi编辑器中与shell进行交互。这些技能将对我未来的学习和工作产生积极影响。


http://www.kler.cn/a/407597.html

相关文章:

  • autogen+ollama+litellm实现本地部署多代理智能体
  • 从 HTML 到 CSS:开启网页样式之旅(二)—— 深入探索 CSS 选择器的奥秘
  • 汇编语言基础
  • 利用 Watchtower 自动监听并更新正在运行的 Docker 容器
  • 丹摩|重返丹摩(下)
  • 23种设计模式-模板方法(Template Method)设计模式
  • Frontend - 防止多次请求,避免重复请求
  • 【Spiffo】环境配置:VScode+Windows开发环境
  • Linux下X11协议理解
  • YOLOv11(Ultralytics)视频选定区域目标统计计数及跟踪
  • STM32解说
  • RabbitMQ1:初识MQ
  • The Yarn application application_xxx_xxx doesn‘t exist in RM
  • jvm发展历程介绍
  • C语言教程指针笔记整理(二)
  • 怎么做好白盒测试?
  • 【MyBatis】useGeneratedKeyskeyProperty属性
  • 积分商品编辑规格里积分未会显问题处理
  • Bugku CTF_Web——my-first-sqli
  • 使用Python生成F分布表并导出为Excel文件
  • linux从0到1——shell编程7
  • WPF绑定Bind方法合集,实时更新
  • YOLOv8-ultralytics-8.2.103部分代码阅读笔记-transformer.py
  • 麒麟网络负载均衡与高可用方案实践
  • 【数据结构OJ】【图论】货币套汇(图路径)
  • 十、事件类型(鼠标事件、焦点.. 、键盘.. 、文本.. 、滚动..)、事件对象、事件流(事件捕获、事件冒泡、阻止冒泡和默认行为、事件委托)