Linux——环境基础开发工具的使用(1)

简介: Linux——环境基础开发工具的使用(1)

一、Linux软件包管理器 — yum

1.Linux下软件安装的方式

在Linux下,安装软件有以下三种方式:


1.源码安装:获取相应软件的源代码—>编译成二进制文件—>安装


2.rpm安装:rpm是由红帽公司开发的软件包管理方式,使用rpm我们可以方便的进行软件的安装、查询、卸载、升级等工作。但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。


3.Yum安装:(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。(最常用)

2.如何查看Linux下的软件包

[mlg@VM-20-8-centos soft]$ sudo yum list

通过yum list来查看所有的软件包

1ecd1b2606ed46e9956a89f231c9802c.png

软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.

"x86_64" 后缀表示64位系统的安装包, "i686" 后缀表示32位系统安装包. 选择包时要和系统匹配.

"el7" 表示操作系统发行版的版本. "el7" 表示的是 centos7/redhat7. "el6" 表示 centos6/redhat6.

最后一列, base 表示的是 "软件源" 的名称, 类似于 "小米应用商店", "华为应用商店" 这样的概念

也可以通过管道加grep过滤来查找想要的软件,以查找 sl\.x86_64软件为例:

1ecd1b2606ed46e9956a89f231c9802c.png

3.利用yum来安装相应的软件

       指令:sudo yum install 软件名;我们这里使用的是普通用户,所以要加sudo;执行指令后需要输入普通用户的密码,然后输入“y”确认安装,当出现complete时,表明安装成功;

[mlg@VM-20-8-centos soft]$ sudo yum install sl\.x86_64//这种需要输入y来进行确认
//或
[mlg@VM-20-8-centos soft]$ sudo yum install -y sl\.x86_64//这里带 -y 可以直接安装

软件的运行效果如下:(直接输入sl就可以运行,是一个可以运动的小火车)

1ecd1b2606ed46e9956a89f231c9802c.png

4.利用yum来进行软件的卸载

       指令:sudo yum remove 软件名; 同样需要输入密码,输入'y'确认卸载,当出现complete时表明卸载成功;

[mlg@VM-20-8-centos soft]$ sudo yum remove sl

5.如何实现云服务器与本地机器间的文件互传

当我们想要将自己电脑中的文件传入云服务器时,Linux也支持拖拽式上传。

1ecd1b2606ed46e9956a89f231c9802c.png

接下来介绍两个指令:rz和sz

rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器;一般小文件我们都是用rz -y来进行上传文件,除此之外还可以用rz -E。


rz -y和re -E的共同点和区别:


共同点:


       都可以把文件上传到Linux中


区别:


       rz -y: 把文件上传到Linux中,如果有相同文件名的文件,会将其覆盖。


       rz -E: 把文件上传到Linux中,如果有相同文件名的文件,不会将其覆盖,而是会在所上传文件后面加上 .0 ,两个文件都会存在与此目录中,再次上传则会在文件名后加上 .1,以此类推。

1ecd1b2606ed46e9956a89f231c9802c.png

sz:将选定的文件发送到本地机器

指令:sz 文件名

1ecd1b2606ed46e9956a89f231c9802c.png

以上两个指令如果出现以下的情况:

[mlg@vm-20-8 ~]# sz
-bash: sz: command not found
[mlg@vm-20-8 ~]# rz
-bash: /usr/bin/rz: No such file or directory

就需要安装lrzsz相关的软件包

6.注意事项

关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!!

可以通过 ping 指令验证

ping www.baidu.com

1ecd1b2606ed46e9956a89f231c9802c.png

二、Linux编辑器 — vim的使用

       Vim是一个文本编辑器。Vim具有代码编译、补完以及错误跳转等编程功能,在程序员中被广泛使用。

1.vim常见的三种模式

1、命令模式(Normal mode):

       使用 Vim 编辑文件时,默认处于命令模式。在此模式下,可以使用上、下、左、右键或者 k(上)、j(下)、h(左)、l(右) 命令进行光标移动,还可以对文件内容进行复制、粘贴、替换、删除等操作。


2、输入模式(Insert mode):

       在输入模式下可以对文件执行写操作,类似在 Windows 的文档中输入内容。进入输入模式的方法是输入 i、a、o 等插入命令,编写完成后按 Esc 键即可返回命令模式。


3、编辑模式(Command mode):

       如果要保存、查找或者替换一些内容等,就需要进入编辑模式。编辑模式的进入方法为:在命令模式下按":"键,Vim 窗口的左下方会出现一个":"符号,这时就可以输入相关的指令进行操作了。指令执行后会自动返回命令模式。

2.vim键盘图

1ecd1b2606ed46e9956a89f231c9802c.png

3.vim三种基本模式间的切换

  当我们创建了文件并使用vim指令进行文本编辑时,默认进入的都是命令模式,只有在命令模式下输入a或i或o指令后,才可以进入插入模式,进行相应的文本编辑;文本编辑结束后,就需要保存起来,我们必须切换到命令模式下输入shift + :进入底行模式,输入wq指令进行保存;


       注意:我们并不能从底行模式直接进入插入模式,反之亦然;如果当前并不知道处于什么模式下直接按Esc就一定是在命令模式下。

1ecd1b2606ed46e9956a89f231c9802c.png

命令模式切换到插入模式可以三种方式:


        i:输入i后进入插入模式,光标处于文本编辑的起始位置,进行插入;


       a:  输入a后进入插入模式,光标处于文本编辑起始位置的下一个位置,进行插入;


       o:  输入0后进入插入模式,光标会在新起一行的位置,进行插入;


命令模式切换到底行模式:


       输入shift + :


插入模式或底行模式切换到命令模式:


       输入Esc

4.vim的命令模式下相关命令

①光标移动

image.png

②删除

image.png

③复制

image.png

④替换

按键操作 功能描述
r

替换光标所在处的字符,支持nr

R

替换光标所到之处的字符,直到按下「ESC」键为止

⑤撤销

按键操作 功能描述
u

        如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次回 复

ctrl + r

撤销的恢复

⑥更改

按键操作 功能描述
cw

更改光标所在处的字到字尾处

c#w

例如,「c3w」表示更改3个字

⑦大小写切换

按键操作 功能描述
~ 完成光标所在位置向后进行大小写切换
n~ 完成光标所在位置向后n个字符进行大小写切换

⑧跳转至指定行

按键操作 功能描述
ctrl+g

列出光标所在行的行号

#G

例如,「15G」,表示移动光标至文章的第15行行首


5.vim底行模式下相关的命令

       在使用底行模式之前,请记住先按「ESC」键确定您已经处于正常模式,再按「:」冒号即可进入末行模式。

①行号设置

set nu      //调出行号
set nonu    //取消行号

②跳转到文件中某一行

「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,
再回车,就会跳到文章的第15行。

③查找字符

「/关键字」: 先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按
「n」会往后寻找到您要的关键字为止。
「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直
按「n」会往前寻找到您要的关键字为止

1ecd1b2606ed46e9956a89f231c9802c.png

④保存与退出

w:保存文件
q:退出vim
!:强制
w! q! wq!

执行指令

!+指令:可以在不退出vim的情况下进行指令操作;

⑥分屏操作

vs 文件名:可以实现分屏,进行多个文件编辑;
ctrl+w+w:屏幕切换(当前底行模式下输入的命令并执行只与当前光标所在文件有关,和鼠标点击哪个文件无关)
目录
相关文章
|
17天前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
24天前
|
前端开发 Linux
深度探索Linux操作系统 —— 构建桌面环境3
深度探索Linux操作系统 —— 构建桌面环境
29 12
|
16天前
|
Shell Linux API
C语言在linux环境下执行终端命令
本文介绍了在Linux环境下使用C语言执行终端命令的方法。首先,文章描述了`system()`函数,其可以直接执行shell命令并返回结果。接着介绍了更强大的`popen()`函数,它允许程序与命令行命令交互,并详细说明了如何使用此函数及其配套的`pclose()`函数。此外,还讲解了`fork()`和`exec`系列函数,前者创建新进程,后者替换当前进程执行文件。最后,对比了`system()`与`exec`系列函数的区别,并针对不同场景推荐了合适的函数选择。
|
24天前
|
存储 搜索推荐 Linux
深度探索Linux操作系统 —— 构建桌面环境1
深度探索Linux操作系统 —— 构建桌面环境
33 8
|
24天前
|
Linux 编译器 C语言
深度探索Linux操作系统 —— 构建桌面环境2
深度探索Linux操作系统 —— 构建桌面环境
26 6
|
26天前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
|
26天前
|
JSON Linux 网络安全
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?
|
26天前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
|
26天前
|
Linux PHP
【Azure 应用服务】PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢?
【Azure 应用服务】PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢?
|
26天前
|
JavaScript Linux API
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤