当前位置: 首页 > news >正文

Linux系统编程Day4-- Linux常用工具(yum与vim)

往期内容回顾

        Linux系统编程Day4-- Shell与权限


权限内容补充

        粘滞位

        “粘滞位”(Sticky Bit)是 Linux/Unix 系统中一个特殊的权限标志,主要用于控制谁可以删除共享目录中的文件。理解它非常关键,尤其是在多人共享文件目录(如 /tmp)时。

粘滞位让目录中的文件只能被其所有者或 root 删除,即使其他用户对该目录有写权限

tmp 目录的权限:

$ ls -ld /tmp
drwxrwxrwt 10 root root 4096 Aug  2 22:00 /tmp

你看到的 t 就是粘滞位。

        权限解释:drwxrwxrwt

  • 所有用户可以读、写、执行(进入)这个目录

  • 但只能删除自己的文件

  • 不能删除其他人的文件

如何设置粘滞位

sudo chmod +t /shared
ls -ld /shared
# drwxrwxrwt 3 root root 4096 Aug  2 21:10 /shared

注意目录权限末尾多了一个 t;

取消粘滞位:

sudo chmod -t /shared

一、Linux软件管理器yum

        

1、什么是 YUM?

        yum 是Linux 基于 RPM 的软件包管理器,常用于 RedHat、CentOS、Fedora 等发行版,用来安装、升级、删除和管理软件包。它自动解决软件依赖问题,能从网络仓库下载安装所需软件和其依赖项。


2、YUM 的常用命令

命令

作用

yum install <软件包>

安装软件

yum remove <软件包>

卸载软件

yum update

更新系统中所有软件

yum update <软件包>

更新指定软件

yum search <关键字>

搜索软件包

yum info <软件包>

查看软件包信息

yum list

显示所有可用或已安装软件包

yum list installed

显示已安装的软件包

yum list available

显示可安装的软件包

yum clean all

清除缓存

yum history

查看安装、删除等操作记录


3、YUM 源(仓库)

        YUM 通过配置的**仓库地址(repo)**从网络上下载软件包。默认仓库配置文件通常位于:

ls /etc/yum.repos.d/

        输出了当前系统中 Yum/DNF 使用的 软件仓库配置文件,这些 .repo 文件用于告诉系统从哪里下载安装软件包, 对于阿里云服务器输出如下:

AliYun.repo  
AliYun.repo.rpmnew  
epel-modular.repo  
epel.repo  
epel-testing-modular.repo  
epel-testing.repo

 vim AliYun.repo

查看 阿里云仓库包括的链接

你可以:

  • 添加第三方仓库(如 EPEL)。

  • 使用本地镜像源(便于离线安装或提速)。

非官方软件集合(EPEL)。


 4、YUM 安装软件的全过程(举例)

sudo yum install wgetsudo yum -y sl

这个命令会:

        1、查询本地是否已安装 wget; 2、从仓库中找到最新版及其依赖项;

        3、下载并安装;        4、自动解决依赖


5、常见问题

  •  YUM 下载慢:可配置为国内镜像,如阿里云源。

  •  软件找不到:可能未启用某个 repo,或软件名不正确。

  •  权限问题:操作 YUM 一般需要 sudo。


 二、Linux开发工具

        1、Linux编辑器-vim使用

        Vim 是 “Vi IMproved” 的缩写,是 vi 编辑器的升级版,功能更强大,广泛用于 Linux/Unix 中的文本编辑,尤其适合程序员。

          1、Vim 安装

大多数 Linux 发行版默认已安装 Vim。你可以用以下命令检查:

vim --version

如果未安装,可使用以下命令安装(以 CentOS 为例):

sudo yum install vim

       2、Vim 的三种模式

        Vim 有三种基本模式:

模式

作用

进入方式

普通模式(Normal)

默认模式,移动光标、复制粘贴等

启动 Vim 后默认进入

插入模式(Insert)

编辑文本

按 i、a、o 进入

命令模式(Command)

保存文件、退出 Vim 等

按 : 从普通模式进入

模式切换统一通过按 Esc 返回普通模式。


       3、常用操作

        1. 启动 Vim (启动之后进入命令模式)

vim 文件名

        2. 插入/编辑文本(输入“ i ”进入插入模式)

命令

含义

i

在光标前插入

a

在光标后插入

o

在下一行新建并插入

Esc

退出插入模式回到普通模

        3. 保存和退出(默认命令模式,其他模式“esc”)

命令

含义

:w

保存文件

:q

退出 Vim

:wq 或 ZZ

保存并退出

:q!

强制退出不保存

        4. 光标移动(底行模式“shift + :”)

操作

含义

h/j/k/l

左/下/上/右

0 / ^ / $

行首 / 第一个非空字符 / 行尾

G / gg

跳到文件末尾 / 文件开头

:n

跳转到第 n 行

        5. 删除/复制/粘贴

命令

含义

x

删除当前字符

dd

删除当前行

yy

复制当前行

p

粘贴到下一行

u

撤销

Ctrl + r

恢复撤销的内容

       4、Vim 配置文件

        个人 Vim 设置保存在 ~/.vimrc 文件中。常见设置例如:

set number        " 显示行号
syntax on         " 开启语法高亮
set tabstop=4     " 设置 tab 长度
set expandtab     " 用空格替代 tab

        2、进阶技巧(简单了解)

命令

说明

/关键词

向下搜索

?关键词

向上搜索

n / N

重复上次搜索,正/反方向

:%s/旧/新/g

全文替换

:set nu

打开行号

:set nonu

关闭行号


http://www.xdnf.cn/news/1234567.html

相关文章:

  • vulhub-corrosion2靶机
  • 1.8 axios详解
  • Unix 发展史概览
  • ClickHouse Windows迁移方案与测试
  • 一键安装RabbitMQ脚本
  • 电脑声音标志显示红叉的原因
  • 决策树的实际案例
  • Python-初学openCV——图像预处理(六)
  • Linux网络编程 ---五种IO模型
  • Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现各类垃圾的分类检测识别(C#代码UI界面版)
  • 基于MBA与BP神经网络分类模型的特征选择方法研究(Python实现)
  • Java学习第一百部分——Kafka
  • (论文速读)探索多模式大型语言模型的视觉缺陷
  • 关于Web前端安全防御之内容安全策略(CSP)
  • 大语言模型涉及的一些概念(持续更新)
  • Azure DevOps 中的代理
  • 知识点汇集(二)-misc
  • 【数据结构】哈希表实现
  • 数据结构:在链表中插入节点(Inserting in a Linked List)
  • 蛇形卷积介绍
  • AVDTP Media Packet 报文深度解析:蓝牙音频流的幕后功臣
  • Celery-分布式任务队列
  • linux2.6 和 unix-v6 源码实验
  • K8S服务发现原理及开发框架的配合
  • 利用AI渲染技术提升元宇宙用户体验的技术难点有哪些?
  • 语义分割--deeplabV3+
  • Navicat连接远程服务器上的mysql
  • ubuntu24.04安装selenium、chrome、chromedriver
  • elk快速部署、集成、调优
  • [Oracle] TO_DATE()函数