Linux:基础开发工具之yum,vim,gcc的使用

简介: Linux:基础开发工具之yum,vim,gcc的使用

本篇主要总结的是Linux下开发工具

  1. yum
  2. vim
  3. gcc/g++

yum

什么是yum?

不管是在手机移动端还是pc端,不管是什么操作系统,当用户想要下载一些内容或者工具的时候,都需要到一个特定的位置进行下载,例如在手机上,要下载一些应用的时候就可以去对应的应用商店下载

而在Linux系统中也有这样的概念,在Linux系统下也有需要下载的需求,那通常来说下载的方式主要有下面的几种:

  1. 下载一个程序的源代码,进行编译后得到可执行程序进行使用
  2. rpm包进行安装,安装实际上就是把可执行程序拷贝到指定的路径下
  3. yum一键式安装

通常来说,如果采用前两种方法进行的安装是很繁琐的,因此Linux中有这样一种比较方便的安装工具就是yum,如果类比到移动端,yum扮演的角色就是应用商店

yum是如何工作的?

在看这个问题前,首先要类比应用商店:应用商店中的app在没有被我安装到手机上的时候,这些app在哪里?答案是在服务器端

各个公司完成的软件,经过应用商店的审核后,把这些内容放到服务器端上,当用户需要某个软件的时候,就通过这个服务器端,就可以找到对应的软件安装包进行安装,这当中服务器端起到了一个审核的作用,以保证用户下载到的都是绿色健康的软件,可以用下图来表示这个过程:

Linux中的下载和上面的模式是一样的,yum的相关文件中,有一些文件保存的就是要去哪里下载文件

yum的使用方法

知晓了yum的原理,yum的使用就如同手机上的应用商店的相关内容一样,大概包括查找,安装和卸载:

查找内容:

yum list | grep 'xxx'

安装内容:

yum install xxxx
yum install -y xxxx  # 可以加入-y后缀直接安装

卸载内容

yum remove xxxx
yum remove -y xxxx  # 可以加入-y后缀直接卸载

和应用商店也有所不同,yum除了可以下载官方提供的下载源外,还可以有一些扩展软件源,例如epel等:

yum源更新

yum clean all
yum makecache

vim

vim简单来说,就是一个多模式的编辑器,核心工作就是对文本进行增删查改

使用方法:

vim test.c  # 使用vim打开一个文件进行文本编辑

就可以打开test.c这个文件进行文件内容的编辑

vim的一些基本指令

// 显示行号
set nu
// 保存
:+w
// 退出
:+q

定位功能的指令

以下指令均为在命令模式下可以进行:

gg    # 定位到第一行
n+G   # 定位到代码的任意一行|最后一行
^     # 特定一行的开始
$     # 特定一行的结尾
h     # 文本向左移动
j     # 文本向下移动
k     # 文本向上移动
l     # 文本向右移动
w     # 以单词为单位向后移动
b     # 以单词为单位向前移动
n+yy  # 复制当前行
n+dd  # 剪切第n行内容
n+p   # 粘贴
u     # 撤销
Ctrl+r# 向后撤销
~     # 文本大小写相互转换
n+r   # 替换光标所在字符|n个字符
n+x   # 向后删除一个字符|n个字符
n+X   # 向前删除一个字符|n个字符
#     # 查找同名单次

下面引入第四种模式—视图模式

进入视图模式:Ctrl+v

回到命令模式:Esc

vim模式下的注释

# 批量化注释
Ctrl+v+j/k进行选区+shift+i+esc
# 批量化删除注释
Ctrl+v+hjkl选中区域+d

vim的基本配置方法

  • 基础配置—初步理解vim配置的原理
    vim在启动的时候,会自动扫描当前用户下的家目录下的.vimrc,让内部的.vimrc内部的选项生效
  • vim配置的核心,实际上就是在这个.vimrc中添加更多的配置选项即可

vim的自动化部署问题

提权问题:如何把用户从普通用户提权提到root权限?

当我们作为普通用户要提权,使用root权限的时候,会被受阻,提示我们没有合适的权限,上面就是提示的样例,这是因为此时我们的test用户并没有成为root的受信任列表内,那么就需要把test这个用户加入到受信任列表内,这样就可以使用root用户的权限,而不是一次次的切换用户

解决方法:

首先切换到root用户下,访问etc路径下的``````sudoers```

接着打开这个文件,在受信任名单内添加我们需要的用户

这样就完成了受信任名单的添加,此时就可以直接使用sudo进行提权了:

gcc

gcc是一款编译器,可以将一份c语言程序编译为可执行文件,运行这个可执行文件就可以输出对应的内容,那么在进行编译的这个过程会发生什么?

将程序翻译的过程,大致上是可以分为下面的几个部分:预处理,编译,汇编,链接

  1. 预处理:主要包括,头文件展开,去注释,条件编译,宏替换
  2. 编译:主要是将c语言程序转换为汇编语言
  3. 汇编:主要是将汇编文件转换为可重定位的二进制文件
  4. 链接:形成可执行文件

gcc是一个编译器,如果不带任何选项,默认直接将程序编译为可执行文件,如果带上一些选项可以编译为这当中的一些部分,用下面的例子来举例:

vim编辑器下完成了下面的代码,其中包含了宏,用带选项的gcc进行编译如下:

使用带-E的选项进行编译,可以形成一个经过预处理后的文件,这个文件依旧是c语言文件,只是进行了一些初步的替换和头文件展开等操作

此时就形成了test.s,这个文件是进行的编译的工作,编译工作做完就停止了

此时就形成了汇编文件,文件内的内容是汇编指令

下一步是形成二进制文件:

就将汇编指令转换为了人看不懂的二进制文件

最后一步就是形成可执行文件:

这样就形成了可执行程序:

gccg++的用法是一样的

相关文章
|
8天前
|
Linux 开发工具 C语言
Linux 安装 gcc 编译运行 C程序
Linux 安装 gcc 编译运行 C程序
31 0
|
23天前
|
搜索推荐 NoSQL Linux
Linux开发工具——vim篇
Linux开发工具——vim篇
|
23天前
|
Ubuntu Linux 编译器
【Linux】4. 开发工具的使用(yum/vim)
【Linux】4. 开发工具的使用(yum/vim)
44 2
|
7天前
|
人工智能 数据可视化 Linux
【linux基础(五)】Linux中的开发工具(上)---yum和vim
【linux基础(五)】Linux中的开发工具(上)---yum和vim
|
21天前
|
Linux C语言
linux yum安装ffmpeg 图文详解
linux yum安装ffmpeg 图文详解
43 0
|
21天前
|
Linux
linux yum 安装rar和unrar
linux yum 安装rar和unrar
66 0
|
7天前
|
Linux
centos 6.5安装yum
centos 6.5安装yum
34 0
|
8天前
|
存储 Linux 网络安全
centos7使用yum网络安装
这些是使用Yum进行网络安装的基本步骤。根据你的需求,你可以重复步骤3和4来安装其他软件包。请注意,执行Yum操作需要root或具有sudo权限的用户。
32 1
|
12天前
|
应用服务中间件 nginx
yum 安装报错 No package nginx available Error:Nothing to do
yum 安装报错 No package nginx available Error:Nothing to do
37 1
|
21天前
|
关系型数据库 MySQL Linux
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
89 0