<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
相关推荐
小呆瓜历险记4 分钟前
ubuntu 22.04搭建SOC开发环境
linux·运维·ubuntu
码农101号4 分钟前
Linux中shell流程控制语句
linux·运维·服务器
ajassi20009 分钟前
开源 java android app 开发(十二)封库.aar
android·java·linux·开源
聪明小萝卜21 分钟前
无法与IP建立连接,未能下载VSCode服务器
运维·服务器
兲行健23 分钟前
为 Nginx 配置 HTTPS(以 n8n 为例)完整教程【CentOS 7】
nginx·https·centos
JuiceFS28 分钟前
深度解析 JuiceFS 权限管理:Linux 多种安全机制全兼容
运维·后端
暗夜潜行31 分钟前
ubuntu + nginx 1.26 + php7.4 + mysql8.0 调优
linux·运维·ubuntu
IU宝35 分钟前
Linux下基础IO
linux·运维·服务器
鹅是开哥1 小时前
ZZU-ARM汇编语言实验2
linux·运维·服务器
HEY_FLYINGPIG1 小时前
解决华为云服务器无法ping通github问题
运维·服务器·华为云