linux基础操作4------(权限管理)
一.前言
今天我们来讲讲linux的权限管理,比如文件的权限,如果大家看过前面说的app逆向的frida,我们在手机里要给frida,我们都要设置一下chomd 777 frida ,这样就给了可执行权限,这就是这一章要讲的,但是大多也还是作为一个知识的了解。
二.权限介绍和示例
root用户权限最高,所以一般对他不做什么权限设置。其他用户就要设定权限并且遵守权限了。
文件权限:
2.1 文件权限
#文件属性
[root@localhost ~]# ls -l /tmp/123.txt
-rw-r--r--. 1 root root 0 7月 20 23:17 /tmp/123.txt
#第一段的第一个字符,表示文件类型 -文件、d目录、l软链接(对应着windows快捷方式)、b块设备(ls /dev,可以看到硬盘sda等)
#第一段第2-4字符,表示该文件所属用户的权限
#第一段第5-7字符,表示该文件所属用户组的权限
#第一段第8-10字符,表示其他用户对该文件的权限
r 4 代表读权限 read
w 2 代表写权限 write
x 1 代表可执行权限 executable
- 0 空权限位,表示没有这个权限,9位权限不能少,没有的权限就用-代替。
权限值表
0 ---
1 --x
2 -w
3 -wx
4 r--
5 r-x
6 rw-
7 rwx
ugo权限体系:
rw- r-- r--
user group other
三.可执行程序特殊目录说明
通过echo $PATH可以看到,类似于windows的环境变量中的PATH。反式放到这个目录中的命令程序, 我们可以在任意目录下通过这个命令程序名称来直接调用命令来执行:
例如
[lisi@localhost tmp]$ echo $PATH # 下面这几个就是环境变量路径存放位置
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/lisi/.local/bin:/home/li si/bin lisi@localhost tmp]$ cp ./ls /home/lisi/bin/
[lisi@localhost tmp]$ ls /home/lisi/bin/ ls
[lisi@localhost tmp]$ mv /home/lisi/bin/ls /home/lisi/bin/xxx # 为了不和系统默认的ls冲突,我们改名为xxx
[lisi@localhost tmp]$ ls /home/lisi/bin/
xxx
[lisi@localhost tmp]$ xxx
[lisi@localhost tmp]$ xxx # 命令可以在任意目录下直接执行
1.txt vmware-root_552-2957583561
ls
四.权限值
权限值:
r 4
w 2
x 1
- 0
权限值表
0 ---
1 --x
2--w
3 -wx
4 r--
5 r-x
6 -rw
7 rwx
修改权限举例
如果我们想将某个文件的:rwxr-xr-x权限改为--x-w-r--,如果按照前面我们chmod指定字母的形式来修 改,就比较麻烦,直接使用权限对应的数字改就很方便:
rwxr-xr-x 对应的值为:755
--x-w-r-- 对应的值为:124
[lisi@localhost tmp]$ chmod 124 1.txt
[lisi@localhost tmp]$ ls -l
总用量 144
---x-w-r--. 1 lisi lisi 25 3月 20 09:24 1.txt
别人再问你,某个文件的权限是多少的时候,我们一般都是直接报数字值,比如它的权限是755
4.1 改变文件的权限
#例如:chomd -r,就是去掉r权限,chomd +r就是加上读权限
chmod
例子1:
#修改权限之前
[test1@localhost tmp]$ ls -l
总用量 4
-rw-rw----. 1 test1 test1 8 7月 20 17:20 test1.txt
#修改权限
[test1@localhost tmp]$ chmod u+x test1.txt
#修改权限之后
[test1@localhost tmp]$ ls -l
总用量 4
-rwxrw----. 1 test1 test1 8 7月 20 17:20 test1.txt
例子2:
同时修改多个权限
[test1@localhost tmp]$ chmod u-x,g-x,o+x test1.txt
[test1@localhost tmp]$ ls -l
总用量 4
-rw-rw---x. 1 test1 test1 8 7月 20 17:20 test1.txt
例子3:数字修改更方便
[test1@localhost tmp]$ chmod 777 test1.txt
[test1@localhost tmp]$ ls -l
总用量 4
-rwxrwxrwx. 1 test1 test1 8 7月 20 17:20 test1.txt
五.修改文件所属
5.1 改变文件拥有者
chown,全称Change Owner,改变拥有者。
#修改文件的所属,普通用户是不能修改其他用户文件的所属的,需要root用户,所以先切换到root用户来操作
chown
例子1:修改所属用户和用户组,test2:test2,前面的test2表示用户,后面的test2是组[root@localhost tmp]# chown test2:test2 ls
[root@localhost tmp]# ls -l
总用量 404
-rwxr-xr-x. 1 test2 test2 159024 7月 20 17:43 grep
-rwxr-xr-x. 1 test2 test2 117608 7月 20 17:38 ls
-rwxr-xr-x. 1 test1 test1 130360 7月 20 17:43 mv
-rw-rw-rw-. 1 test1 test1 14 7月 20 17:38 test1.txt
# 修改所属用户
[root@localhost tmp]# chown test1 ls
[root@localhost tmp]# ls -l
总用量 404
-rwxr-xr-x. 1 test2 test2 159024 7月 20 17:43 grep
-rwxr-xr-x. 1 test1 test2 117608 7月 20 17:38 ls
-rwxr-xr-x. 1 test1 test1 130360 7月 20 17:43 mv
-rw-rw-rw-. 1 test1 test1 14 7月 20 17:38 test1.txt
# 修改目录权限和所属
例子3:文件夹(目录权限)
用root用户创建一个文件夹,文件夹默认所属用户和组为root:root,那么普通用户是没全限制在这个目录 中创建文件的。
[root@localhost ~]# cd /tmp/
[root@localhost tmp]# mkdir jaden
[root@localhost tmp]# ls -l
drwxr-xr-x. 2 root root 6 3月 20 11:36 jaden
普通用户,比如lisi想在里面创建文件:
[lisi@localhost tmp]$ cd jaden/
[lisi@localhost jaden]$ touch 2.txt
touch: 无法创建"2.txt": 权限不够
如何让lisi有创建文件的权限呢?创建文件的权限就是目录写权限
首先要切换到root用户,然后用root用户修改目录权限,或者直接将目录的所属修改为lisi修改权限:
[root@localhost tmp]# chmod o+w jaden
[root@localhost tmp]# ls -l
drwxr-xrwx. 2 root root 6 3月 20 11:36 jaden
切换到lisi,创建文件:
[lisi@localhost jaden]$ touch 2.txt
[lisi@localhost jaden]$ ls
2.txt
修改所属:
[root@localhost tmp]# chmod o-w jaden
[root@localhost tmp]# ls -l
drwxr-xr-x. 2 root root 19 3月 20 11:39 jaden
[root@localhost tmp]# chown lisi:lisi jaden
[root@localhost tmp]# ls -l
drwxr-xr-x. 2 lisi lisi 19 3月 20 11:39 jaden
切换到lisi:
[lisi@localhost jaden]$ touch 3.txt
[lisi@localhost jaden]$ ls 2.txt 3.txt
lisi也可以修改目录的权限了,因为它完全属于的lisi:
[lisi@localhost tmp]$ chmod o+w jaden
[lisi@localhost tmp]$ ls -l
drwxr-xrwx. 2 lisi lisi 32 3月 20 11:42 jaden
#使用uid和gid修改文件的所属用户和所属用户组 属主,属组
例子2:
[root@localhost tmp]# ls
-l总用量 404
-rwxr-xr-x. 1 test2 test2 159024 7月 20 17:43 grep
-rwxr-xr-x. 1 test1 test2 117608 7月 20 17:38 ls
-rwxr-xr-x. 1 test1 test1 130360 7月 20 17:43 mv
-rw-rw-rw-. 1 test1 test1 14 7月 20 17:38 test1.txt
[root@localhost tmp]# id test1
uid=1000(test1) gid=1000(test1) 组=1000(test1)
[root@localhost tmp]# id test2
uid=1001(test2) gid=1001(test2) 组=1001(test2)
[root@localhost tmp]# useradd -g test1 test3
[root@localhost tmp]# id test3
uid=1002(test3) gid=1000(test1) 组=1000(test1)
[root@localhost tmp]# chown 1001:1001 test1.txt
[root@localhost tmp]# ls -l
总用量 404
-rwxr-xr-x. 1 test2 test2 159024 7月 20 17:43 grep
-rwxr-xr-x. 1 test1 test2 117608 7月 20 17:38 ls
-rwxr-xr-x. 1 test1 test1 130360 7月 20 17:43 mv
-rw-rw-rw-. 1 test2 test2 14 7月 20 17:38 test1.txt
文件权限和目录权限的解释说明:
文件权限: rwx 读写执行
目录的权限: rwx,r表示可以查看目录下有哪些文件 x表示可以cd切换到该目录 w表示可以在目录中创 建、修改、删除文件等操作
为了安全操作: 文件权限默认: 644权限、狠一点就给600权限
目录权限默认: 755权限、狠一点就给700权限
六.文件属性详解
#文件属性
[root@localhost ~]# ls -l
-rw-rw-rw-. 1 lisi lisi 0 3月 20 16:00 222.txt
#第一段的第一个字符,表示文件类型 -文件、d目录、l软链接(对应着windows快捷方式)、b块设备(ls /dev,可以看到硬盘sda等)
#第一段第2-4字符,表示该文件所属用户的权限
#第一段第5-7字符,表示该文件所属用户组的权限
#第一段第8-10字符,表示其他用户对该文件的权限
#第一段的第11个字符. ,表示开启selinux的状态下创建的,也证明selinux是开启状态的。
# 看到.表示这个文件受到selinux的保护,selinux:https://baike.baidu.com/item/SELinux/8865268?fr=aladdin,这个东西很安全,但是有了它变 得很麻烦,安全和便利一般是冲突的。主要是红帽系的系统(redhat\centos\阿里的龙蜥\华为的欧拉)有这 个机制。我们一般上来就是关闭它,安全方面我们通过其他方法来控制。查看selinux的指令:
# 查看状态
[lisi@localhost tmp]$ sestatus
SELinux status: enabled # enabled表示开启状态,disabled表示禁用状态
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted 、
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
# 关闭和开启selinux,需要root权限才能修改
[root@localhost tmp]# ls -l /etc/selinux/config
-rw-r--r--. 1 root root 543 3月 15 20:11 /etc/selinux/config
[root@localhost tmp]# vi /etc/selinux/config
把7行改为: SELINUX=disabled #然后保存退出,并且重启系统才会生效。
# 然后再登录创建文件,查看文件信息,就看不到.了
[root@localhost ~]# touch 1.txt
[root@localhost ~]# ls -l
总用量 16
-rw-r--r-- 1 root root 0 3月 20 13:32 1.txt
#第二段的数字,表示该文件的硬链接数量,其实这个和我们的安全没有太大关系,运维人员需要学习,ln是 创建硬链接的指令。我们不提了
#第三段的字符串,表示该文件所属用户
#第四段的字符串,表示该文件所属用户组
#第五段的数字,表示该文件的大小,默认单位为B,如果想按照KB来显示,那么可以通过ls -lh指令来查 看。h是human的意思,以人类可读的方式显示,会自动按照文件大小来设定显示单位。
#第六段到倒数第二段,都是该文件的修改时间,只要改动了文件内容,这个时间就会自动变为修改文件时的时 间。
#其实linux系统会记录三个时间:
# 访问时间(access time) 文件被打开时自动变化这个时间
# 修改时间(modify time) 文件内容发生变化时自动改变这个时间,ls -l 显示的就是这个时 间。
# 改变时间(change time) 文件属性发生变化时自动改变这个时间,文件大小也是文件的属性, 所以修改文件内容导致大小变化的时候,这个时间也会自动改变。
#windows系统也会记录三个时间:访问时间、创建时间、修改时间
#linux下通过stat指令来查看:
[root@localhost ~]# stat 1.txt
文件:"1.txt"大小:0 块:0 IO 块:4096 普通空文件
设备:801h/2049d Inode:67108933 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2023-03-20 13:32:34.333042228 +0800
最近更改:2023-03-20 13:32:34.333042228 +0800
最近改动:2023-03-20 13:32:34.333042228 +0800
创建时间:-
# 我们改一下文件权限,然后再看时间
[root@localhost ~]# chmod 777 1.txt
[root@localhost ~]# stat 1.txt
文件:"1.txt"
大小:0 块:0 IO 块:4096 普通空文件
设备:801h/2049d Inode:67108933 硬链接:1
权限:(0777/-rwxrwxrwx) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2023-03-20 13:32:34.333042228 +0800
最近更改:2023-03-20 13:32:34.333042228 +0800
最近改动:2023-03-20 13:56:43.005634151 +0800 # 改动时间变了
创建时间:-
#最一段,该文v
linux一切皆文件的系统。
七.总结
今天说的就这么多,主要其实还是做个了解就好,期待大家的点赞关注收藏
相关文章:
linux基础操作4------(权限管理)
一.前言 今天我们来讲讲linux的权限管理,比如文件的权限,如果大家看过前面说的app逆向的frida,我们在手机里要给frida,我们都要设置一下chomd 777 frida ,这样就给了可执行权限,这就是这一章要讲的&#x…...
Linux数据库篇、第零章_MySQL30周年庆典活动
MySQL考试报名网站 Oracle Training and Certification | Oracle 中国 活动时间 2025年 MySQL的30周年庆典将于2025年举行。MySQL于1995年首次发布,因此其30周年纪念日是2025年。为了庆祝这一里程碑,MySQL将提供免费的课程和认证考试,活动…...
HVV面试题汇总合集
应急响应的命令 Linux ps -aux 查看进程 netstat -antlp 查看端口 top查看 cpu使用情况 Windows tasklist 查看进程 netstat -an 查看端口struts2原理特征 原理: 045:默认的content-type解析器会把用户传来的数据直接当成代码执行,造成rce 特征:ognl表达式&…...
Mac下Robotframework + Python3环境搭建
1.安装python3 1.0安装XCODE 1.打开浏览器,登陆苹果开发者网站:https://developer.apple.com/download/more/ 2.登陆你的apple账号,授权访问。 3.查看mac系统版本 需要下载与系统版本对应的Xcode 4.在搜索框中输入: 如果Mac 系统…...
stm32实战项目:无刷驱动
目录 系统时钟配置 PWM模块初始化 ADC模块配置 霍尔接口配置 速度环定时器 换相逻辑实现 主控制循环 系统时钟配置 启用72MHz主频:RCC_Configuration()设置PLL外设时钟使能:TIM1/ADC/GPIO时钟 #include "stm32f10x.h"void RCC_Configu…...
MNIST 手写数字分类
转自我的个人博客: https://shar-pen.github.io/2025/05/04/torch-distributed-series/1.MNIST/ 基础的单卡训练 本笔记本演示了训练一个卷积神经网络(CNN)来对 MNIST 数据集中的手写数字进行分类的过程。工作流程包括: 数据准备ÿ…...
【RuntimeError: Directory ‘static/‘ does not exist 】
背景 File “/root/miniforge3/lib/python3.10/site-packages/starlette/staticfiles.py”, line 56, in init raise RuntimeError(f"Directory ‘{directory}’ does not exist") RuntimeError: Directory ‘static/’ does not exist 运行读取pdf时候,…...
SQL:SELF JOIN(自连接)与CROSS JOIN(交叉连接)
目录 SELF JOIN(自连接) CROSS JOIN(交叉连接 / 笛卡尔积) 示例: SELF JOIN CROSS JOIN 如果没有 DATEDIFF() 函数怎么办? 🔍 SELF JOIN vs CROSS JOIN 对比总结 SELF JOIN(自…...
Linux网络基础 -- 局域网,广域网,网络协议,网络传输的基本流程,端口号,网络字节序
目录 1. 计算机网络背景 1.1 局域网 1.1.2 局域网的组成 1.2 广域网 1.1.2 广域网的组成 2. 初始网络协议 2.1 网络协议的定义和作用 2.2 网络协议的分层结构 2.2.1 OSI七层模型 2.2.2 TCP/IP 五层(四层)模型 3. 再识网络协议 3.1 为什么要有…...
当 Manus AI 遇上 OpenAI Operator,谁能更胜一筹?
自主智能体通过实现任务自动化,改变了我们与技术交互的方式,让我们的生活变得更加便捷。去年,OpenAI 为人工智能聊天机器人引入了定时任务和操作智能体,赋予了其代理功能,而 Anthropic 则在 Claude 上实现了类似的功能…...
iOS实名认证模块的具体实现过程(swift)
实名认证是当前APP的一个基础功能了,今天我集成了实名认证模块在iOS应用中的具体实现步骤,结合技术细节与最佳实践: 一、手机号验证 1. 发送短信验证码 技术实现:// 使用Alamofire调用第三方短信API AF.request("https://s…...
UE5定序器中摇臂挂载摄像机 让摄像机始终朝向目标
1. 搭建摄像机摇臂并加入 Sequencer 在关卡中: Cinematics → Add Level Sequence,新建并打开一个 Level Sequence。 在视口里 右键 → Cinematic → Cine Camera Actor Rig → Crane,放一个 CameraRig_Crane。 默认 Crane 自带一个 CineCa…...
Redis BigKey 问题是什么
BigKey 问题是什么 BigKey 的具体表现是 redis 中的 key 对应的 value 很大,占用的 redis 空间比较大,本质上是大 value 问题。 BigKey怎么找 redis-cli --bigkeysscanBig Key 产生的原因 1.redis数据结构使用不恰当 2.未及时清理垃圾数据 3.对业务预…...
硬件中断请求号和lspci命令查看到的device id有关系吗?
这是我忽然想到的一个人问题 硬件中断请求号(IRQ)与lspci命令查看到的设备ID(Device ID)没有直接对应关系,但两者在系统硬件管理中通过以下方式间接关联: 一、硬件层面的独立标识 Device ID的本质…...
Qt 中 QWidget涉及的常用核心属性介绍
欢迎来到干货小仓库 一匹真正的好马,即使在鞭子的影子下,也能飞奔 1.enabled API说明isEnabled()获取到控件的可用状态setEnabled()设置控件是否可使用.true:可用,false:禁用 禁用:指该控件不能接收任何用…...
编程日志5.3
串的习题 1.Problem - 2030 #include<iostream> using namespace std; int main() { char s[500]; int n; cin >> n; getchar();//去掉空格部分 while (n--) { gets(s);//老式写法 vs显示错误题目解答正确 int cnt 0; …...
sql的性能分析
慢查询日志:通过慢查询日志需要优化的sql语句。 慢查询日志记录了所有执行时间超过指定参数的所有sql语句。 开启慢日志查询开关:show_query_log1 设置慢查询日志的时间:long_query_time?。 show variables like ‘slow_query_log’&…...
JAVA 锁—— synchronized
32 位机器上java对象头中,markWord 示意图如上所示,64 位机器扩展前面标识位数,如 hashcode(25 -> 31),线程ID(23 -> 54) 如果启用了偏向锁: synchronized添加偏向锁:只有1个线程加锁的情况下&#…...
游戏引擎学习第274天:基于弹簧的动态动画
回顾前一天内容,并为今天的工作设定目标 我们昨天展示了一些内容,现在先回顾一下昨天的进展。我们目前正在处理的是角色跳跃的动画——特别是身体部分的跳跃。 现在角色的动画状态如下: 正在实现角色的移动和跳跃。跳跃中已经加入了一些预备…...
【英语笔记(二)】句子成分、基本句型;简单描述十大词类与从句的分类、助动词和非谓语动词的使用
1. 介词 at, in, on 的用法区别 1.1 表示时间的区别 1. 表示时间的某一点、某一时刻或年龄等用 at。如: I get up at six in the morning. 我早上六点钟起床。He got married at the age of 25. 他 25 岁结婚。 2. 泛指一般意义的上午、下午或晚上以及月或年等较…...
TAPIP3D:持久3D几何中跟踪任意点
简述 在视频中跟踪一个点(比如一个物体的某个特定位置)听起来简单,但实际上很复杂,尤其是在3D空间中。传统方法通常在2D图像上跟踪像素,但这忽略了物体的3D几何信息和摄像机的运动,导致跟踪不稳定…...
RabbitMQ的工作队列模式和路由模式有什么区别?
RabbitMQ 的工作队列模式(Work Queues)和路由模式(Routing)是两种不同的消息传递模式,主要区别在于消息的分发逻辑和使用场景。以下是它们的核心差异: 1. 工作队列模式(Work Queues)…...
armv7 backtrace
ref: ARM Cortex-M3/M4/M7 Hardfault异常分析_arm hardfault-CSDN博客...
Python并发编程:开启性能优化的大门(7/10)
1.引言 在当今数字化时代,Python 已成为编程领域中一颗璀璨的明星,占据着编程语言排行榜的榜首。无论是数据科学、人工智能,还是 Web 开发、自动化脚本编写,Python 都以其简洁的语法、丰富的库和强大的功能,赢得了广大…...
泰勒展开式
常用的 泰勒展开式(Taylor series expansion)是指把一个函数在某点的邻域内展开成幂级数的形式。以函数 f ( x ) f(x) f(x) 在点 a a a 处展开为例,其泰勒展开式为: f ( x ) f ( a ) f ′ ( a ) ( x − a ) f ′ ′ ( a ) 2 …...
深入理解 Polly:.NET Core 中的健壮错误处理策略
在现代软件开发中,错误处理是构建高可用、健壮系统的关键之一。尤其是当应用依赖外部服务(如 API、数据库或其他网络资源)时,临时的服务中断、超时或其他不可预见的错误都会影响应用的稳定性。为了提升系统的容错能力,…...
【Bootstrap V4系列】学习入门教程之 组件-巨幕(Jumbotron)和列表组(List group)
Bootstrap V4系列 学习入门教程之 组件-巨幕(Jumbotron)和列表组(List group) 一、巨幕(Jumbotron)1.1 带有圆角1.2 全宽且无圆角 二、列表组(List group)2.1 Basic example2.2 Acti…...
02.three官方示例+编辑器+AI快速学习webgl_animation_skinning_blending
本实例主要讲解内容 这个示例展示了Three.js中骨骼动画混合(Skeletal Animation Blending)的实现方法,通过加载一个士兵模型,演示了如何在不同动画状态(如站立、行走、跑步)之间进行平滑过渡。核心技术包括动画混合器(AnimationM…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1商用服务开通教程以及模型体验
在当今数字化浪潮迅猛推进的时代,云计算与人工智能技术的深度融合正不断催生出众多创新应用与服务,为企业和个人用户带来了前所未有的便利与发展机遇。本文将重点聚焦于在华为云这一行业领先的云计算平台上,对 DeepSeek-V3/R1 商用服务展开的…...
大语言模型通过MCP控制STM32-支持Ollama、DeepSeek、openai等
MCP控制STM32 MCP部分 1.下载源码 git clone https://github.com/ana52070/MCP_Control_STM32.git cd MCP_Control_STM32 cd mcp-led_oled2. 创建并激活虚拟环境 为了避免不同项目之间的依赖冲突,建议使用虚拟环境。根据你的操作系统和 Python 版本,…...
Linux-Ubuntu安装Stable Diffusion Forge
SD Forge在Win上配置起来相对简单且教程丰富,而在Linux平台的配置则稍有门槛且教程较少。本文提供一个基于Ubuntu24.04发行版(对其他Linux以及SD分支亦有参考价值)的Stable Diffusion ForgeUI安装配置教程,希望有所帮助 本教程以N…...
LoRA(Low-Rank Adaptation)原理详解
LoRA(Low-Rank Adaptation)原理详解 LoRA(低秩适应)是一种参数高效微调(Parameter-Efficient Fine-Tuning, PEFT)技术,旨在以极低的参数量实现大模型在特定任务上的高效适配。其核心思想基于低秩分解假设,即模型在适应新任务时,参数更新矩阵具有低秩特性,可用少量参…...
分享一个可以用GPT打标的傻瓜式SD图片打标工具——辣椒炒肉图片打标助手
一、打标效果展示 请参考下图,了解最终的打标效果: 打标速度提升百分之300; 打标成本: gpt4o每百张图约5毛rmb; gpt4o-mini价格更低; 更有claude,grok,gemini,豆包等…...
实战项目2(03)
目录 任务场景一【重点】 【sw1配置】 【sw2配置】 任务场景二【重点】 【sw1配置】 【sw2配置】 【sw3配置】 任务场景一【重点】 掌握基于SVI实现跨VLAN通信——某公司网络为了减少广播包对网络的影响,网络管理员对网络进行了VLAN划分,完成VLA…...
PyCharm软件下载和配置Python解释器
以下是详细的PyCharm下载及解释器环境配置步骤: 有什么问题可以留评论(看见会回复的) 一、PyCharm下载 1. 访问官网 进入JetBrains官网:https://www.jetbrains.com/pycharm/ 2. 选择版本 Community版(免费&…...
《从零构建一个简易的IOC容器,理解Spring的核心思想》
大家好呀!今天我们要一起探索Java开发中最神奇的魔法之一 —— Spring框架的IOC容器!🧙♂️ 我会用最最最简单的方式,让你彻底明白这个看似高深的概念。准备好了吗?Let’s go! 🚀 一、什么是IOC容器&…...
差分与位移算子
差分与位移算子是数值分析和离散数学中处理序列或离散函数的重要工具。它们通过算子代数简化差分的计算和分析,以下是关键概念和关系的总结: 1. 位移算子(Shift Operator) 定义: 位移算子 ( E ) 将函数 ( f(x) ) 沿自变…...
Robot之VideoMimic:《Visual Imitation Enables Contextual Humanoid Control》翻译与解读
Robot之VideoMimic:《Visual Imitation Enables Contextual Humanoid Control》翻译与解读 导读:这篇论文介绍了VIDEOMIMIC,一个基于视觉模仿的真实到模拟到真实流水线,用于训练人形机器人执行上下文相关的全身动作。该方法通过分…...
【Java学习日记34】:this关键字和成员变量
为什么不需要加 this? 作用域规则: Java编译器在查找变量时遵循“就近原则”。 先在当前方法内查找局部变量或参数。 若找不到,则去类的成员变量中查找。 getName() 的上下文: 该方法没有参数或局部变量名为 name,因…...
包名查看器APP:高效管理手机应用的实用工具
包名查看器APP是一款功能强大的文件查看软件,专为安卓用户设计,能够帮助用户快速了解手机上安装和未安装的APK包信息。作为酷安首发的APK信息查看工具,它提供了比系统设置更详细的信息,如版本号、包名、MD5等,帮助用户…...
左右括号的最小处理次数
1、题目描述 多多君在处理一个由左结号(和右语号)组成的字符串,多多君每次处理时可以顺序读取一个字符或者一个有效括号子串,求问多多的最小处理次数。 输入描述: 第一行为一个整数N,表示字符串长度(1<…...
22.第二阶段x64游戏实战-分析周围对象类型
免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 上一个内容:21.第二阶段x64游戏实战-分析采集物偏移 上一个内容里发现采集物的名字通过我们…...
【C/C++】无符号调试:GDB解栈实战指南
文章目录 无符号调试:GDB解栈实战指南1 生成并加载 Core Dump2 查看原始堆栈信息(地址形式)3 确认加载的共享库地址范围4 手动转换地址为函数名5 反汇编关键代码段6 加载外部符号文件(如有)7 结合系统库文档分析8 示例…...
梦熊联盟:202505基础语法-题解
202505基础语法-题解 T1 - 九的倍数 解法: 对于 9 的倍数,只需要判定其各位的数码和是否为 9 的倍数即可。 例如判断一个数是不是 9 的倍数,只要判断其各位数字之和是不是 9 的倍数,因为一个数能被 9 整除当且仅当它的各位数字之和…...
Java SE(11)——内部类
1.内部类 定义:Java中的内部类(Inner Class)是指在一个类的内部定义的类。 使用场景:当一个类的内部,存在一个部分需要完成的结构进行描述,而该内部结构只为外部类提供服务,那么这个内部结构就可以使用内部类ÿ…...
优化审核模块响应时间从8s降至1.2s的数据库解决方案
优化审核模块响应时间从8s降至1.2s的数据库解决方案 要优化审核模块的数据库性能,需要从多个层面进行分析和优化。以下是具体的SQL语句设计和优化方案: 1. 分析当前性能瓶颈 首先需要找出慢查询: -- 查看慢查询日志中的审核模块相关查询 …...
YOLO-World:基于YOLOv8的开放词汇目标检测
文章目录 前言1、出发点2、方法2.1.TextEncoder2.2.ReparmVLPAN2.3.输出头 3、实验3.1.数据集3.2.LVIS测试集 总结 前言 本文介绍一篇来自腾讯的开放词汇检测工作,发表自CVPR2024,论文链接,开源地址。 1、出发点 GroundingDINO在开放词汇检测…...
NX989NY104美光科技芯片NY109NY113
NX989NY104美光科技芯片NY109NY113 存储市场新势力:美光科技的崛起与技术突围 在半导体行业波澜壮阔的浪潮中,美光科技宛如一颗璀璨的明珠,以其独特的技术实力和敏锐的市场洞察力,在存储领域占据了重要的一席之地。尤其是其旗下…...
LabVIEW的PID参数自适应控制
在工业控制领域,PID 控制凭借结构简单、稳定性好、工作可靠等优点被广泛应用。然而,传统固定参数的 PID 控制在面对复杂多变的工况时,控制效果往往难以达到最优。基于 LabVIEW 实现 PID 控制根据情况选择参数(即参数自适应调整&am…...
Quartus与Modelsim-Altera使用手册
目录 文章内容: 视频内容: Quartus: ModelSim: 顶层设计与子模块: 只是对所查阅的相关文章的总结与视频总结 文章内容: 这篇对基础操作很详细: 一、Quartus II软件的使用_quartus2软件上…...