【Linux】环境基础开发工具的使用(一)

前言:在此之前我们学习了一些Linux的权限,今天我们进一步学习Linux下开发工具的使用。

💖 博主CSDN主页:卫卫卫的个人主页 💞
👉 专栏分类:Linux的深度刨析 👈
💯代码仓库:卫卫周大胖的学习日记💫
💪关注博主和博主一起学习!一起努力!
在这里插入图片描述


目录标题

  • 基础开发工具的使用
    • 什么是软件包
    • yum的使用
    • 关于rzsz
      • 一些好玩的小指令
    • Linux编辑器-vim使用
      • vim的基本操作
        • vim命令模式命令集
        • vim底行模式命令集
          • 如何左右分屏
          • 如何快速切换屏幕
        • 批量注释和批量去注释
        • 简单vim配置


基础开发工具的使用

什么是软件包

  • 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序。
  • 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。
  • 软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系,yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上。

yum的使用

yum的概念:Linux系统中,yum是一种包管理器,用于安装、升级和管理软件包。它能够自动解析软件包的依赖关系,并从软件源中下载对应的软件包进行安装。
关于yum的更多用法大家可以通过man指令去查看:man yum
下面是yum的一些常用命令和使用示例:

  1. 安装软件包
[wei@centos7 ~]$ yum install <package_name>
  1. 升级软件包
[wei@centos7 ~]$ yum update <package_name>
  1. 删除软件包:
[wei@centos7 ~]$ yum remove <package_name>
  1. 搜索软件包:
[wei@centos7 ~]$ yum search <keyword>
  1. 列出可用软件包:
[wei@centos7 ~]$ yum list
  1. 列出已安装的软件包
[wei@centos7 ~]$ yum list installed
  1. 清除缓存
[wei@centos7 ~]$ yum clean packages # 清理已下载的软件包
[wei@centos7 ~]$ yum clean headers # 清理软件包的header信息
[wei@centos7 ~]$ yum clean all  # 清理所有缓存

关于rzsz

这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件.
安装完毕之后可以通过拖拽的方式将文件上传过去。rz用于接收文件,sz用于发送文件。

  1. 首先我们需要安装:sudo yum install lrzsz

  2. 我们通过: yum list | grep lrzsz查看安装的lrzsz如果安装成功会出现下图这个形式,注意事项也对这个进行了对应的解释
    在这里插入图片描述

  3. 当然了如果我们想要卸载也可以通过该指令来卸载软件:sudo yum remove lrzsz

  4. 我们可以直接通过在桌面拖拽的形式上传文件(如下图)请添加图片描述

  5. yum 会自动找到都有哪些软件包需要下载, 这时候敲 “y” 确认安装

  6. 出现 “complete” 字样, 说明安装完成

  7. 安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成。

  8. yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错(如果报错不知道如何解决,百度会帮你)。

注意事项请添加图片描述

  • 软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.
  • “x86_64” 后缀表示64位系统的安装包, “i686” 后缀表示32位系统安装包. 选择包时要和系统匹配.
  • “el7” 表示操作系统发行版的版本. “el7” 表示的是 centos7/redhat7. “el6” 表示 centos6/redhat6.
  • 最后一列, base 表示的是 “软件源” 的名称, 类似于 “小米应用商店”, “华为应用商店” 这样的概念.

一些好玩的小指令

小火车:安装:sudo yum install -y sl 运行: sl
在这里插入图片描述
打印一头牛:安装:sudo yum install -y cowsay 运行:sl
在这里插入图片描述


Linux编辑器-vim使用

今天我们讲解vim的三种模式(其实有好多模式,目前掌握这3种即可),分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  • 正常/普通/命令模式(Normal mode) :控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
  • 插入模式(Insert mode):只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
  • 末行模式(last line mode):文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入。

vim的基本操作

  1. 打开文件:在终端中输入vim 文件名,例如vim text.txt,可以打开一个名为text.txt的文件(如果我们打开的是一个新建的文件里面通常是什么都没有的,这里作者这个文件里面的东西是后来写的大家可以忽略)。这里我们用vim直接打开的时候就属于是正常模式/普通模式
    在这里插入图片描述
  2. 如果我们此时在键盘上按一下a或者o,就会进入到插入模式,我们就可以直接通过键盘来在里面输入内容。
  3. 如果进入了正常模式或者插入模式我们想退出,就输入shift+:(你不懂的话可以理解成你在电脑上给别人发信息发:这个符号),此时我们就进入了末行模式。
  4. 在末行模式的时候输入:q可以直接退出编辑器。如果文件有未保存的修改,可以输入:q!来强制退出而不保存修改。如果同时有多个文件打开,可以输入:qa来退出所有文件。w保存文件并推出。
  5. 至于如何流畅的在这三个模式中切换请看下图
    在这里插入图片描述
    接下来我们就来讲这个各个模式如何用用命令来帮助我们以后快速的操作

vim命令模式命令集

移动光标:

  • h:左移一个字符
  • j:下移一行
  • k:上移一行
  • l:右移一个字符
  • Ctrl + f:向下翻页(相当于Page Down键)
  • Ctrl + b:向上翻页(相当于Page Up键)
  • gg:跳到文件的开头
  • G:跳到文件的末尾
  • nG:跳到文件的第n行

删除文本:

  • x:删除光标所在处的字符
  • nx:删除当前光标所在处及其往后n个字符
  • X:删除光标所在处的前一个字符
  • nX:删除当前光标所在处及其往前n个字符
  • dd:删除当前行
  • ndd:删除当前行及其后n-1行

复制与粘贴

  • yy:复制当前行到缓冲区.
  • nyy:复制当前行及其后n-1行
  • yw: 将光标所在之处到字尾的字符复制到缓冲区中
  • nyw:复制n个字到缓冲区
  • p:粘贴复制的文本,往后粘贴
  • P:粘贴在当前行之前
  • dd之后再p :剪切

搜索和替换

  • / 搜索词:向下搜索指定的关键词
  • ?搜索词:向上搜索指定的关键词
  • n:跳到下一个匹配的关键词
  • N:跳到上一个匹配的关键词
  • :s /旧词/新词/g:替换当前行中的旧词为新词
  • :%s/旧词/新词/g:替换全文中的旧词为新词
  • r:替换光标所在处的字符(输入r后在输入想要替换成的字符即可)
  • nr:支持nr 往后替换n个字符
  • R:替换光标所到之处的字符,直到按下「ESC」键为止
  • shift + r 替换模式:直接进行多个内容的替换

撤销上一次操作

  • u:撤销上一次的操作(多按几次u可以执行多次撤销)
  • Ctrl + r:重做上一次被撤销的操作
  • .:重复上一次的编辑操作

保存和退出

  • :w:保存文件
  • :wq:保存并退出编辑器
  • :q:退出编辑器(仅在无修改时生效)
  • :q!:强制退出编辑器,丢弃所有修改

更改:

  • cw:删除从光标处到单词(不包括整型)结尾的文本并进入到插入模式
  • cnw:例如,「c3w」表示删除3个字
  • shift + ~ :快速大小写切换(大写转小写,小写转大写)

vim底行模式命令集

vim的底行命令是在vim编辑器中使用冒号(:)进入底行模式,进行一些编辑、保存、退出和搜索等操作。以下是一些常用的vim底行模式命令集:

  • :w - 保存当前文件
  • :wq - 保存当前文件并退出
  • :q - 退出当前文件(如果没有修改)
  • :q! - 强制退出当前文件,放弃修改
  • :x - 保存当前文件并退出(只有在文件被修改过的情况下)
  • :e <文件路径> - 打开指定路径的文件
  • :bn - 切换到下一个缓冲区
  • :bp - 切换到上一个缓冲区
  • :bd - 关闭当前缓冲区
  • :%s/<目标字符串>/<替换字符串>/g - 全局替换指定字符串
  • :/<目标字符串> - 搜索指定字符串
  • :set nu - 显示行号
  • :set nonu - 隐藏行号
  • :set syntax=<语法类型> - 设置语法高亮类型(如syntax=python)
  • :set spell - 打开拼写检查
  • :set nospell - 关闭拼写检查
  • :help <命令> - 查看命令的帮助文档

这只是一些常用的vim底行命令,vim还有很多其他功能强大、用途广泛的命令,可以通过在底行模式下键入“:help”来查看更多的帮助文档。


如何左右分屏

在底行模式下, vs 文件名 可以不断分屏,往左侧分屏,如果vs后面的文件名不存在,则会默认先创建,再打开
在这里插入图片描述

如何快速切换屏幕

在底行模式下 按ctrl +w +w , 光标在哪里闪动,就说明哪个文件被选中,在该文件底行模式输入wq保存退出,保留的就是另外的文件(如下图所示)
请添加图片描述


批量注释和批量去注释

在命令模式下 : ctrl + v 然后用l,j,k,h选中区域,然后按大写的I,会跳到第一个位置,输入//注释,然后按esc按键
在命令模式下 : ctrl + v 然后用l,j,k,h选中区域,注意:要选中两个// 然后按小写的i,然后按d

简单vim配置
  • 在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
  • 而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,
  • 通常已经存在一个.vimrc文件,如果不存在,则创建之。
  • 切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~打开自己目录下的.vimrc文件,执行 vim .vimrc

自动配置vim:
直接输入下列命令即可

curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh

在这里插入图片描述
然后按照提示输入root密码,然后等待安装配置,最后手动执行source ~/.bashrc.配置完成后,类似自动补全、行号显示以及自动缩进等功能就有了。


好啦,今天的内容就到这里啦,下期内容预告gcc/g++、make/makefile、进度条的讲解


结语:今天的内容就到这里吧,谢谢各位的观看,如果有讲的不好的地方也请各位多多指出,作者每一条评论都会读的,谢谢各位。


🌏🗺️ 这里祝各位寒假愉快 💞💞

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

docker下,容器无法启动,要删除里面的文件

第一步&#xff1a;进入docker cd /var/lib/docker 第二步&#xff1a;查找&#xff0c;我这里是拼音分词器 find ./ -name py 第三步&#xff1a;得到路径 第四步&#xff1a;删除或复制或移动&#xff0c;我这里是删除py文件夹 rm -rf ./over那一串 第五步&#xff1a;想干…

在 python 中调用 C/C++

Python 是一种很好用的胶水语言&#xff0c;利用Python的简洁和C的高效&#xff0c;基本可以解决99%的问题了&#xff0c;剩下那 1% 的问题也就不是问题了&#xff0c;毕竟不是所有问题都可解。 一般的&#xff0c;Python和C的交互分为这两种情况&#xff1a; 用C扩展Python&…

转转基于MQ的分布式重试框架设计方案

文章目录 1 背景2 方案3 效果4 可选项5 注意事项6 总结 1 背景 在分布式场景下&#xff0c;为了保障系统的可用性和数据的最终一致性&#xff0c;采用基于消息队列&#xff08;MQ&#xff09;的重试机制是一种常见的解决方案。伪代码如下&#xff1a; /*** 需要保证最终一致性…

数据可视化Tableau

目录 一.第一次实验课内容 1、熟悉Tableau Desktop的工作环境。 2、熟悉数据导入、维度和度量的区分以及不同数据字段类型的标识符。 3、熟悉工作表的基本操作&#xff0c;主要包括行列功能区&#xff0c;标记卡&#xff0c;筛选器&#xff0c;智能推荐的使用。 4、作业--…

3. Mybatis的XML配置文件(重点)

目录 1 Mybatis的XML配置文件 1.1 XML配置文件规范 1.2 XML配置文件实现 1.3 MybatisX的使用 2. Mybatis动态SQL 2.1 什么是动态SQL 2.2 动态SQL-if 2.2.1 条件查询 2.2.2更新 2.3 动态SQL-foreach 2.4 动态SQL-sql&include 1.mybatis入门 2.mybatis基本操作 1…

六大效果图渲染技巧,实现照片级真实感!

追求完美的3D艺术家们&#xff0c;注意了&#xff01;掌握这六大效果图渲染技巧&#xff0c;就能令你的作品逾越虚拟与现实的边界。无需长篇大论&#xff0c;立即提升你的渲染工作至照片级别的真实感&#xff01;让观者难以分辨&#xff0c;这正是我们所追求的魔法。 六大效果图…

LRU缓存(Leetcode146)

例题&#xff1a; 分析&#xff1a; 题目要求函数get和put要达到O(1)的时间复杂度&#xff0c;可以用 hashMap 来实现&#xff0c;因为要满足逐出最久未使用的元素的一个效果&#xff0c;还需要配合一个双向链表来共同实现。链表中的节点为一组key-value。 我们可以用双向链表来…

LED显示屏安装后常见调试问题及解决方法

LED全彩显示屏在户外广泛应用&#xff0c;通常由多个箱体组装而成。在安装和调试过程中&#xff0c;可能会出现一些常见问题&#xff0c;下面对这些问题及解决方法进行汇总&#xff1a; 1. 加载不上可能是哪些原因造成的&#xff1f; - A. 确保控制系统硬件已正确上电&#xff…

RK3588平台开发系列讲解(视频篇)H.264码流结构介绍

文章目录 一、 码流查看工具二、 I帧、 P帧、 B帧三、序列四、GOP, 即关键帧间隔五、片和宏块沉淀、分享、成长,让自己和他人都能有所收获!😄 📢H.264码流结构介绍。 一、 码流查看工具 ① H.264码流查看工具: Elecard_streamEye、 Elecard StreamEye Tools、 Special…

本地部署Tomcat开源服务器并结合内网穿透远程访问

文章目录 前言1.本地Tomcat网页搭建1.1 Tomcat安装1.2 配置环境变量1.3 环境配置1.4 Tomcat运行测试1.5 Cpolar安装和注册 2.本地网页发布2.1.Cpolar云端设置2.2 Cpolar本地设置 3.公网访问测试4.结语 前言 Tomcat作为一个轻量级的服务器&#xff0c;不仅名字很有趣&#xff0…

智能小车案例:基于Raspberry Pi的自动巡航与避障系统

项目背景 随着物联网技术的不断发展&#xff0c;智能小车成为了现代生活和工业自动化中的重要工具。为了实现智能小车的自动巡航与避障功能&#xff0c;我们采用了Raspberry Pi作为主控制器&#xff0c;结合传感器和执行器&#xff0c;构建了一个完整的系统。 所需材料 Raspber…

山海鲸可视化:引领银行管理进入数据可视化新时代

在金融领域&#xff0c;数据是决策的关键。作为山海鲸可视化的开发者&#xff0c;我们深知数据的价值&#xff0c;并致力于通过可视化技术为银行管理提供更为直观、高效的数据分析工具。 应用场景&#xff1a; 风险管理&#xff1a;银行在运营过程中面临各种风险&#xff0c;如…

第17次修改了可删除可持久保存的前端html备忘录:增加年月日星期,增加倒计时,更改保存区名称可以多个备忘录保存不一样的信息,匹配背景主题:现代深色

第17次修改了可删除可持久保存的前端html备忘录&#xff1a;增加年月日星期&#xff0c;增加倒计时&#xff0c;更改保存区名称可以多个备忘录保存不一样的信息&#xff0c;匹配背景主题&#xff1a;现代深色 备忘录代码&#xff1a; <!DOCTYPE html> <html lang&quo…

Vue学习笔记14 --自定义hook函数/toRef/provide/inject等

9.自定义hook函数 什么是hook&#xff1f;—— 本质是一个函数&#xff0c;把setup函数中使用的Composition API进行了封装。 类似于vue2.x中的mixin。 自定义hook的优势: 复用代码, 让setup中的逻辑更清楚易懂。 10.toRef 作用&#xff1a;创建一个 ref 对象&#xff0c;其…

音视频数字化(音乐CD)

上篇文章【音视频数字化(音频数字化)】我们聊了音频数字化原理,其中谈到了音乐CD,结尾也提到了一个小问题:“CD音质是最高吗?为什么?”不知道大家是怎么理解的。 其实CD质量只是“无损”存储,但是数字化标准只是“44.1kHz,16bit”,因此相对于现在,音质不能说最高。 …

电脑用的视频编辑软件有哪些 视频剪辑软件排行榜 视频剪辑软件推荐 视频剪辑培训学习 视频剪辑制作自学 电脑视频剪辑需要什么配置

电脑视频剪辑软件这么多&#xff0c;到底哪些比较好用&#xff1f;下面就让我们以十大电脑视频剪辑软件排行榜来细数好用的软件。另外&#xff0c;电脑视频剪辑需要什么配置&#xff1f;本文也会给大家从内存、CPU等参数上介绍&#xff0c;并推荐好用的电脑设备。 一、十大电脑…

Orion-14B-Chat-RAG本地部署的解决方案

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

2024年能源环境、材料科学与人工智能国际会议(ICEEMSAI2024)

2024年能源环境、材料科学与人工智能国际会议(ICEEMSAI2024) 会议简介 2024国际能源环境、材料科学和人工智能大会&#xff08;ICEEMSAI 2024&#xff09;主要围绕能源环境、物质科学和人工智慧等研究领域&#xff0c;旨在吸引能源环境、先进材料和人工智能专家学者、科技人员…

Git系列---远程操作

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 引用 1.理解分布式版本控制…

赋能五星养老机构,河北爱晚红枫与清雷科技达成合作

“作为2023年河北省5家五星级养老机构之一&#xff0c;爱晚红枫医养服务有限公司以康复医学为特色&#xff0c;专为失能和半失能人群以及周边患者提供专业的康养治疗服务。此次和清雷科技合作&#xff0c;旨在用高科技的系统和监测产品进一步提升院区的医养结合能力&#xff0c…