Linux操作系统--文本编辑器(保姆级教程)

news2024/11/23 6:34:11

文本编辑器

Linux是一种文本驱动的操作系统。用户在使用Linux过程中经常需要编辑文本,比如编写脚本文件来执行几条命令行,写电子邮件,创建C语言源程学等,因此,必须熟悉至少一种文本编辑器以便高效地输入和修改文本文件。除此之外,文本编辑器还可以方便查看文件的内容,以便识别其关键特征。

  • vim介绍
    vim是Linux系统自带的一种文本编辑软件。
  • vim的三种模式
    命令模式:command mode
    输入执行特定vim功能的命令
    输入模式:insert mode
    输入、编辑、修改文本内容
    末行模式:last line mode
    执行对文件的保存,退出,内容搜索等操作
    三种模式的转换
    在这里插入图片描述
    并不是所有的Linux系统都是在安装好后就安装好的vim软件,需要我们在Linux操作系统系统中下载安装。下面示范在centos操作系统中下载vim
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    输入ifdow ifcfg-ens33 关闭网卡
    再输入ifup ifcfg-ens33开启网卡
    在这里插入图片描述
    这样网卡就启动完毕,
    输入:yum install vim
    即可再Linux中下载并安装vim
    在这里插入图片描述
    这样我们vim编辑器就可以下载并安装好。
    刚才我们提到了vi,这里我们把vi也说一下。
    vi编辑器和vim编辑都是再Linux操作系统中实验的编辑,而vi是linux自带的,vim是需要通过下载后安装的,不同点就是vim用起来要方便很多,有点类似于windows中微软拼音和某狗输入法。
    这里我们把vi说一下,
    在这里插入图片描述
    这些命令,需要你们记忆并做笔记。
    这里我们就来讲讲,关于编辑器的使用
    1、在根目录创建一个123.doc的文件
    这里我们不使用touch 使用了。我们使用vim 来创建。
    在这里插入图片描述
    直接输入vim 123.doc即可
    我们就创建并进入了文件
    在这里插入图片描述
    进入文件后第一的模式是命令模式,我们按“i”进入到编辑模式
    在这里插入图片描述
    这个时候,我们可以输入“hello word”
    再按“esc”后输入:wq进行退出。
    在这里插入图片描述
    这个时候,我们就把内容写入到文件里面了。
    我们可以输入“cat 123.doc”查看文件内容
    在这里插入图片描述
    以上是我们对文件的总体操作,现在我们详细讲解。
  • 三种模式的标志
    命令模式
    在这里插入图片描述
    在文件中没有任何提示,我们输入相关命令即可对文件的内容进行操作。
  • 插入模式
    输入小写字母i后,
    在这里插入图片描述
    在左下角会有一个插入或者insert的字样。
  • 末行模式
    在这里插入图片描述
    在末行模式中,光标会移动在最后一行,在命令模式中按“:"即可
    我们创建一个文本,并在文本中编写一个C语言程序。
    注意:需要先现在c语言环建
    yum install gcc gcc-c++ kernel-devel
    在这里插入图片描述
    下载好后,新建一个234.c文件,按i进入插入模式。写入下面C语言代码。
    在这里插入图片描述
    写好后,保存退出。
    编译C语言代码,输入gcc 234.c -o 234
    在这里插入图片描述
    没有报错即编译完成,输入ls查看
    在这里插入图片描述
    这里多了一个绿色文件。
    输入./234进行执行
    在这里插入图片描述
    我们可以看到输出了this is test的字符。
  • 末行模式下的命令介绍
    如果,我们要确定写代码的行数,那么我们可以在末行模式中输入:set nu
    在这里插入图片描述
    这里就可以看到行号了。
    :set nu 中nu 是number的简写。
    如果需要关闭行号的话,在末行中输入:set nonu
    在这里插入图片描述
  • 命令模式的特点
    打开vi就进入命令模式,
    无论当前为何种模式,按ESC键就可以回到命令模式,命令模式下,任何键盘操作都会被认为是vi(vim)命令,自动执行,且不会现实在屏幕上,更不会写入文件。
    刚才我们有一个图可以展现命令模式转插入模式的命令,
    从命令模式进入到插入文本(进入输入模式)
    在光标右边插入文本 在命令模式下按“a”
    在一行的结尾处添加文本 在命令模式下按“A”
    在光标左边插入文本 在命令模式下按"i”
    在行首插入文本 在命令模式下按"I"
    在光标所在行的下一行插入新行 在命令模式下按“o”
    在光标所在行的上一行插入新行 在命令模式下按“O”
    我们在windows操作系统中,在word中写入文字或图片中如果有一个步骤中需要返回的话,我们需要按Ctrl+z,进行撤销操作。在linux中没有什么Ctrl+z的操作,那么我们如在插入模式中多删除了字符,不知道怎么恢复怎么办,那么我们可以在命令模式中按下“u”键,
    撤销操作
    撤销前一个命令:按u
    撤销最后一次修改,不论光标是否在修改行
    撤销对一行的更改:按U
    撤销对当前行所做的修改,前提是光标在当前行
    删除文本
    我们在windows操作系统中对word的操作中有退格键删除和delete键的删除。
    在linux操作系统中,我们只能通过命令模式中按相应的字符来完成删除操作。
    删除一个字符:按x
    x删除光标处字符,nx删除从光标所在位置开始的n个字符
    x删除光标前面的那个字符,nX从光标前面的那个字符开始向左的ng字符
    删除一次:dw
    删除一行:dd
    复制和粘贴
    在windows操作系统中对word的操作,我们可以选中相应的字符按下ctrl+c对所选的字符进行复制,
    在linux操作系统中,如果需要复制一行内容按:yy
    粘贴:按p
    剪切:按dd
    查找字符串:在windows操作系统中对word的操作我们Ctrl+F可以对字符进行查找,
    在linux操作系统中,我们可以在文本中按:/查找内容 对需要查找的内容进行查找。
    按:n //跳到下一个出现出 N //跳到上一个出现出
  • 末行模式的特点
    退出和保存
    在命令模式,记住一定是在命令模式,(这里也就告诉我们在插入模式是无法直接进入末行模式的,在三个模式的转换中尤其要注意)在命令模式下输入“:”方可切换到末行模式
    在“:”后面输入相应的操作命令,按回车执行(其实在前面也就讲过了,这里我就把所有的退出都讲一下)
    :w 保存文件(类似windows中的ctrl+s)
    :q 退出vi(或vim),记住是退出,是没有保存的
    :q! 退出不保存 加有“!”是强制退出的意思
    :wq 保存退出 (一般在vi或者vim编辑完成后,需要保存文档且退出的时候,可以输入这个)
    vi(或vim)模式中复制、剪切文本
    我们在linux操作系统中文档写作的时候,难免有需要复制粘贴的时候,这时候我们可以想想在windows中,我们是直接对需要复制张贴的文字,段落直接ctrl+c然后在适合的位置ctrl+v.
    在linux中,我们可以在末行模式下,直接输入
    “:2 copy 4” 是将文件的第二行复制到第四行的后面
    “:1,4 copy 7” 是将第一行至第四行之间的文本复制到第七行之后。 在shell命令中,我们可以将copy 简写为co.
    剪切文本呢,
    有的朋友会给我说,可以复制后,把前面的删掉就可以了。没错这个是一个方法。
    我们还有一个办法,就是直接用命令。
    移动文本块,
    在末行模式下,输入
    “:1,8 move 17” 我们就可以把1至8行的内容剪切到17行后面。
    如果,我们要将1到8行的内容,存储到一个新的文件里面呢?
    可以输入(末行模式输入)
    :1,8 move myfile2
    这个是将1,8行的内容另存到一个新的文件
    在末行模式输入
    :1,6 w myfile2
    这里多了一个是将用1,6行的内容去覆盖myfile2的内容
    有的朋友就要问了,能不能将1,6行的内容,追加到文本后面呢,不要覆盖,可以
    输入(末行模式输入)
    :1,6 w>>myfile2
    这样就可以将1,6行的内容追加到myfile2文本后面
    在这里插入图片描述
    我们就将1,4行复制到了第八行后面
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    我们将文件中的1到4行重新写入到一个文件(789.c)
    在这里插入图片描述
    在这里插入图片描述
    这里就告诉我们,生成了一个789.c的文件
    我们退出到根目录去ls查看发现真的有
    在这里插入图片描述
    我们在将234.c文件的5-9行追加到789.c中,
    在这里插入图片描述
    在这里插入图片描述
    在文件的左下角就有文件的信息,这时我们去看看789.c文件
    在这里插入图片描述
    789.c文件里面就有相关的信息了。

总结:

  1. vi(或vim)的三种模式:命令模式、插入模式、末行模式 三种模式直接的转换
  2. 命令模式里面的操作很多,记住主要的操作u是撤销,dd是剪切(可以删除行)
  3. 插入模式中进入插入模式的命令有很多了,记住在命令模式按i就行,i–>insert。
  4. 行模式中的复制粘贴、退出(:q、:wq、:w、:q!)等等。 安装C语言编译环境。
  5. 网络的配置,可以参照前面的博客
  6. 一定要照着博客进行练习,只有这样才能孰能生巧。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/154918.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring循环依赖详解

概述 我们在日常的技术交流中经常会提到Spring循环依赖,听起来挺高大尚的,那Spring到底是如何实现的呢?下面我们就来一一揭秘。 什么是循环依赖 如上图所示,A对象中包含B对象的引用,同时B对象中包含A对象的引用&…

微信小程序自定义tabbar栏【中间突出样式】

文章目录前言一、自定义tabbar栏 配置二、添加自定义tabbar栏组件添加组件代码创建全局字段在组件中保存重要字段三、效果展示总结前言 昨天主管突然给我说微信小程序默认的 tabBar 不美观,让我改成中间突出的那种样式。纵然我心里面有千般不情愿,但还是…

python实现算法与数据结构基础-链表、栈、队列、排序算法、二分查找、二叉树

目录1、算法的概念1.1 举例:1.2 算法的五大特性:1.3 时间复杂度1.4 空间复杂度2、数据结构2.1 内存的存储结构2.2 数据结构的分类2.3 顺序表存储方式3、链表3.1链表实现3.2链表的方法3.3链表增加节点3.4链表删除节点3.5链表总结4、栈4.1 栈的介绍4.2 栈的…

负载均衡SLB和LVS的简单介绍

负载均衡 SLB 阿里云SLB(Server Load Balancing,服务器负载均衡):是阿里云结合自身弹性计算平台的特点以及强大的技术优势,提供的一套软件负载均衡解决方案,以更好的满足弹性计算平台负载均衡的需求。 什么情况下使用SLB? 简单…

2022尚硅谷SSM框架跟学(四)Spring基础一

2022尚硅谷SSM框架跟学.四 Spring基础一Spring1.Spring简介1.1、Spring概述1.2Spring家族1.3Spring Framework1.3.1Spring Framework特性1.3.2Spring Framework五大功能模块2.IOC2.1.IOC容器2.1.1IOC思想(1).获取资源的传统方式(2).反转控制方式获取资源(3).DI2.1.2、IOC容器在…

(02)Cartographer源码无死角解析-(48) 2D点云扫描匹配→扫描匹配基本原理讲解,代码总体框架梳理

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解:https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

项目管理工具dhtmlxGantt甘特图入门教程(八):数据加载(二)

DhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足应用程序的所有需求,是最完善的甘特图图表库。 这篇文章给大家讲解如何利用dhtmlxGantt加载任务日期。 DhtmlxGantt正版试用下载(qun:764148812&#x…

【Linux】进程状态、优先级和进程切换

大家好我是沐曦希💕 文章目录一、操作系统进程1.运行队列2.进程状态二、Linux进程状态三、两个特殊进程1.僵尸进程2.孤儿进程四、进程优先级1.优先级概念2.查看系统进程3.PRI和NI4.nice值的更改5.特性五、进程切换1.并发2.进程如何切换一、操作系统进程 什么是进程…

axios拦截器、ElementUI组件的使用

一、axios拦截器 1、axios模块的作用 是对基于http请求的封装。在浏览器对异步请求对象XMLHttpRequest进行封装 2、拦截器 ​ (1)请求拦截器:对客户端发起的请求进行统一的前期处理(token、时间戳、cookie等) ​ …

电脑软件经常出现程序未响应是什么原因?及4种解决方法总结

对于电脑小白来说,电脑经常会出现一下莫名其妙的问题,下面我总结的这些方法可以帮大家排除电脑的问题,让电脑速度如飞。资源不足:如果您的电脑资源不足,比如内存或 CPU 使用率过高,那么程序可能会变得不稳定…

【Linux操作系统】多线程(二)

文章目录4. 线程池5. 单例模式5.1 饿汉模式5.2 懒汉模式6. STL、智能指针和线程安全6.1 STL中的容器是否是线程安全的6.2 智能指针是否是线程安全的6.3 其他常见的各种锁7. 读者写者模型7.1 基本概念7.2 读写锁7.3 基本操作7.4 优先级4. 线程池 介绍 一种线程使用模式。线程过…

论文分享 | MnTTS2: 开源的多说话人蒙古语TTS数据集

本次分享内蒙古大学蒙古文信息处理重点实验室、蒙古文智能信息处理技术国家地方联合工程研究中心及语音理解与生成实验室 (S2LAB) 共同发布的开源多说话人蒙古语语音合成数据集及其基线模型。相关论文《MnTTS2: An Open-Source Multi-Speaker Mongolian Text-to-Speech Synthes…

【Java编程进阶】Java异常详解

推荐学习专栏:Java 编程进阶之路【从入门到精通】,从入门到就业精通,买不了吃亏,买不了上当!! 文章目录1. 异常2. 异常的体系3. Error4. 异常产生的过程5. throw 关键字6. 异常处理6.1 throws 关键字6.2 tr…

基于Node.js和vue的师生互助平台

摘 要随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代&am…

Jetpack Compose中的软键盘与焦点控制

FocusRequester 与 FocusManager 在 Compose 中,可以通过 FocusRequester 与 FocusManager 这两个对象可以主动在代码中控制焦点获取和取消焦点,其中FocusRequester可以用来获取焦点,通过调用它的requestFocus()方法来实现,而 Fo…

脚手架搭建Vue项目

以上创建的方式发现一直存在config目录 换种方式 卸载脚手架命令 npm uninstall vue-cli -g 重新安装 npm install vue/cli -g 1.vue create 项目名 2.模板选择,通过键盘上下键来选择,我们选择第三个 自定义 这三个选择分别是 vue2 / vue3 默认模板…

12.Isaac教程--未来工厂中的搬运车

未来工厂中的搬运车 ISAAC教程合集地址: https://blog.csdn.net/kunhe0512/category_12163211.html 文章目录未来工厂中的搬运车运行模拟器搬运车送货申请自动小车运输的行为树导航与感知互通仅限自主导航申请仅适用于感知训练模型物体检测模型(DetectNetv2&#x…

JSP SSM家教管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 JSPSSM家教管理系统 是一套完善的系统源码,对理解JSP java SrpingMVC mybiats 框架 MVC编程开发语言有帮助,系统具有完整的源代码和数据库,以及相应配套的设计文档,系 统主要采用B/S模式开发。 研究的基本内容…

5.5、TCP 的拥塞控制

在某段时间若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏\color{red}对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就…

CSDN第22场周赛

1.写在前面的话22场周赛的详情总比赛第7名了,hhhCSDN周赛非常能够锻炼码代码的能力,无论是在平常的练习题目当中,还是每次的周赛中,题目有难有易,每次周赛的题目出的十分具有代表性,参加了将近20场的周赛&a…