<Linux> Linux环境开发工具

一、Linux软件包管理器 - yum

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

  1. 源代码安装

  2. rpm安装

  3. yum安装 -- 解决安装源, 安装版本, 安装依赖

1. yum三板斧:查找、安装、卸载

复制代码
yum list | grep XXX   在软件包内查找XXX
yum install -y XXX    下载,-y 表示直接同意
yum remove -y XXX     卸载

好玩的软件sl、cowsay


关键词:国内yum源centos7

二、vim的使用

1. vim基本概念

vim编辑器------文本编写------写代码,是一个多模式的编辑器,其他的像vs、idea都是集成开发环境

2. vim基本操作

-i :进入插入模式

esc : 退出当前模式,进入命令模式

shift + ;进入末行模式

3. vim模式指令集

3.1 命令模式指令集

单文件:

  • gg定位光标到最开始行
  • shift + g(G)定位光标到最结尾行
  • n + shift + g (n + G)定位光标到第n行
  • shift + (其实就是):定位光标到当前行结尾
  • shift + ^(其实就是^****):定位光标到当前行的头部
  • w**:光标往后移动,以单词为单位,进行行内或跨行移动**
  • b**:往前移动,以单词为单位,进行行内或跨行移动**
  • h, j, k, l**:左,下,上,右移动**
  • 上键,下键,左键,右键**:按字符移上下左右移动**
  • (n) yy复制光标所在行(n行)
  • (n) p粘贴(n行)到光标所在行的下一行,也就是粘贴几次
  • (n) dd(连续多行) 剪切、删除(就是不p了)
  • u**:撤销**
  • ctrl + r**: 撤销之前的撤销**
  • shift + ~****:改大小写
  • (n) r + 任意字母**:对光标之后的(n个)字符进行替换**
  • shirft + r(即R**):进入替换模式,对内容进行整体替换**
  • (n) x**:对光标字符之后的字符进行删除**

多文件:

在低行模式,用vs指令打开多个文件编辑窗口

复制代码
vs code1.c
  • ctrl + w + w:窗口光标切换
3.2 底行模式命令集

可以在不退出vim情况下,执行外部命令

可以搜索,例如/main,光标直接到main那一行

w!:强制保存

q!:强制退出:

wq!:强制保存并退出

set nu:显示行号

set nonu:不显示行号

4. 简单vim配置

在vim里写代码有点不舒服,所以我们可以配置vim,在用户目录下,touch .vimrc文件,在该文件下配置并保存,即可。不会影响其他用户,即,一个用户一个配置文件,不建议给root做配置

三、 sudo

1. 如何将用户添加至白名单

sudo:权限提升,以root身份运行指令,但只允许在白名单内的用户使用此命令。

  1. 转为root用户 ,并用 vim 打开 /etc/sudoers 文件

    vim /etc/sudoers

  2. 再找到root,将自己的用户名添加上去

  1. 怎么看是否获得权限了,touch一个文件看拥有者是不是root
相关推荐
皮小白17 分钟前
ubuntu开机检查磁盘失败进入应急模式如何修复
linux·运维·ubuntu
邂逅星河浪漫33 分钟前
【CentOS】虚拟机网卡IP地址修改步骤
linux·运维·centos
hhwyqwqhhwy41 分钟前
linux 驱动开发相关
linux·驱动开发
IT逆夜1 小时前
实现Yum本地仓库自动同步的完整方案(CentOS 7)
linux·运维·windows
a***59261 小时前
用nginx正向代理https网站
运维·nginx·https
S***26751 小时前
linux上redis升级
linux·运维·redis
赖small强2 小时前
【Linux 网络基础】Linux 平台 DHCP 运作原理与握手过程详解
linux·网络·dhcp
ifanatic2 小时前
[每周一更]-(第161期):分析服务器中内存即将爆满过程
运维·服务器
热爱学习的小怪兽2 小时前
docker的一些常用指令
运维·docker·容器
s***4533 小时前
Linux 下安装 Golang环境
linux·运维·golang