<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
相关推荐
SkyWalking中文站30 分钟前
认识 Horizon UI · AI Assistant:用日常语言查询你的可观测性数据
运维·监控·自动化运维
艾莉丝努力练剑1 小时前
OpenCode AI 编程:Ubuntu 24.04 环境安装与使用指南
linux·服务器·网络·人工智能·tcp/ip·ubuntu
崇山峻岭之间1 小时前
Keil5输出hex转换为bin的设置
linux·运维·服务器
Hoxy.R2 小时前
KingbaseES读写分离高可用集群扩容、备库重建与故障切换实战
运维·数据库
谷雪_6582 小时前
Linux 网络命名空间:从内核原理到企业级容器网络架构全景实战
linux·网络·架构
qq_163135753 小时前
Linux 【03- chgrp命令超详细教程】
linux
考虑考虑4 小时前
nginx配置ssl
运维·后端·nginx
我会尽全力 乐观而坚强4 小时前
MySQL库与表的操作
linux·数据库·mysql
着迷不白4 小时前
Linux 磁盘管理完全指南:分区、文件系统、挂载与 LVM 实战
linux·运维·服务器
山川而川-R4 小时前
LangChain
linux·运维·服务器