Linux---(三)基本指令大全

news2024/12/25 0:36:28

前提引入:历史上先出现的键盘还是鼠标?
答案:键盘
✨所以刚开始的时候绝对没有图形化界面,因此操作系统刚开始兴起的时候绝对没有图形化界面,因为当时没有鼠标。
✨因为没有图形化界面,只有键盘,决定了操作系统早期进行交互时只能是指令操作。后来随着乔布斯和比尔盖茨将图形化界面版的操作系统推向全球。
✨世界上第一款鼠标在这里插入图片描述
✨图形化界面和命令行操作本质是一样的,都是对操作系统进行直接或间接的操作的。

文章目录

  • 前言
  • 一、常用指令入门
  • 二、指令详解
    • 1.touch指令(作用:创建文件/更改时间)
      • 用法
    • 2.ls指令(显示该目录下的所有子目录与文件名)
      • ls 只查看文件名
      • ==ls -l== 列出当前目录下的所有子目录与文件更多的属性信息
      • ==ls -l -a== 列出目录下的所有文件,包括以.开头的隐含文件
    • 3.cd指令
      • 用法:
      • 该图注释:
      • 疑问:
      • 区分绝对路径和相对路径
    • 4.mkdir指令
      • 作用:
      • 用法:
    • 5.rmdir指令和rm指令
      • 用法:
      • 危险指令
    • 6.man指令
      • 作用:
      • 用法:
    • 7. 小的文本编辑器nano
    • 8.cp指令
      • 作用:
      • 用法:
    • 9.mv指令
      • 作用:
      • 用法:
      • 示例:
    • 10.cat指令
      • 作用:
      • 用法:
    • 11.tac指令
      • 作用:
      • 用法:
      • 示例:
    • 12.more指令
      • 作用:
      • 用法:
      • 注意:
    • 13.less指令
      • 作用:
      • 用法:
    • 14.head指令
      • 作用:
      • 用法:
    • 15.tail指令
      • 作用:
      • 用法:
      • 如何拿到文件内容的某个区间行(比如一个大文件的500-510行的内容)?
    • 16.wc指令
      • 用法及作用:
      • 示例:
    • 17.uniq指令
      • 用法及作用:
      • 示例:
    • 18.sort指令
      • 用法及作用:
    • 19.date指令
      • 作用:
      • 用法:
      • 时间戳
    • 20.cal指令
      • 作用:
      • 用法:
      • 示例:
    • 21.find指令
      • 作用:
      • 用法:
    • 22.grep指令
      • 作用:
      • 用法:
    • 23.which指令
      • 作用及用法:
      • 注意:
    • 24.whereis指令
      • 作用:
    • 25.zip和unzip指令
      • 什么是打包和压缩
      • 为什么要打包压缩
      • 如何打包和压缩
      • 如何解压
    • 26.tar指令
      • 作用:
      • 用法:
    • 27.bc指令
      • 作用:
      • 用法:
    • 28.uname指令
      • 用法及作用:
    • 29.重要的几个热键
      • [Tab]按键
      • [Ctrl+c]按键
      • [Ctrl+d]按键
    • 30.shutdown指令
      • 作用:
      • 用法:
    • 31.拓展命令
      • 安装和登录命令
      • 文件处理命令
      • 系统管理相关命令
      • 网络操作命令
      • 系统安全相关命令
      • 其他命令
  • 总结


在这里插入图片描述

前言

一、常用指令入门

登录上linux想知道当前在哪个目录下 使用指令pwd
在这里插入图片描述
看一下当前目录下有什么文件 使用指令ls
在这里插入图片描述
想要看到目录下文件的更详细的信息 使用 ls -l 指令
在这里插入图片描述
制作一个文件夹(用linux的话术说是目录) 使用 mkdir [目录名] 指令
在这里插入图片描述
进入到其他目录下 使用cd [目录名] 指令
在这里插入图片描述

二、指令详解

1.touch指令(作用:创建文件/更改时间)

用法

(1)创建文件

新建一个文件夹是为了进入的,为了在里面创建普通文件的
新建一个文档,相当于新建一个记事本,里面可以写简单的东西
在这里插入图片描述

可以一次创建多个文件

touch test1.txt test2.txt test3.txt test4.txt

(2)更改时间
linux获取文件的时间
在这里插入图片描述
注意
touch+不存在的文件名:新建一个不存在的文件
touch+已存在的文件名:对应的ACM时间全部被更新

2.ls指令(显示该目录下的所有子目录与文件名)

ls 只查看文件名

在这里插入图片描述

ls -l 列出当前目录下的所有子目录与文件更多的属性信息

在这里插入图片描述

✨小常识:新建一个空文件,这个文件要不要占据磁盘空间?
一个文件没有内容,大小确实为0
但是一个文件有名称,修改日期,类型,大小。这些叫做文件的属性
🧨属性是数据吗?
文件的属性在宏观上是数据。比如文件名是字符串,大小是整数
文件的属性也是要保存在计算机上的。
🎐文件=内容+属性
无论是内容还是属性,在计算机看来本质上都是数据
文件在磁盘或硬盘上保存,也就是文件的内容和属性在磁盘硬盘上保存
✨解答:新建一个空文件,这个文件要占据磁盘空间

🎃对文件的操作,无非就分为:
对内容的操作
对属性的操作

所以ls -l是查看文件的相关属性

ls -l -a 列出目录下的所有文件,包括以.开头的隐含文件

也可以写成 ls -la
在这里插入图片描述

✨在linux中以.开头的文件称之为隐藏文件
✨ls -l不显示隐藏文件
.表示当前所在目录
. .表示上级目录(也就是当前目录所在的路径)

在这里插入图片描述

cd . . 进行目录的回退
./a.out 执行程序(.表达的意思是找到并执行当前路径下的程序,名字叫a.out)
在这里插入图片描述

我们用的指令,本质其实就是可执行程序(C\C++\其他程序写的)
指令包括工具和可执行程序,本质:就类似于我们写的可执行程序
ll是ls -l的别名 linux中允许给指令起别名

3.cd指令

用法:

(1)cd 目录名
(2)cd … (进行上级目录的回退)

/ 在linux中是linux下的分隔符,\ 在windows中是路径分隔符

(3)cd 绝对路径
(4)cd 相对路径
(5)cd ~ (进入当前用户对应的家目录,也就是当前是谁在linux下使用这个目录)
在这里插入图片描述

linux下不同账号下的家目录
(1)root账号下的家目录是/root
(2)普通用户账号下的家目录是/home/zhm

(6)cd -(返回当前目录路径的上一次目录路径)

在这里插入图片描述

该图注释:

(1)/ 是根目录
(2)一个目录里可以放多个目录,目录中的目录还可放多个目录,所以linux的目录结构本质是多叉树结构
(3)Linux当中所有的非目录文件一定是linux多叉树目录中的叶子结点
(4)所有的叶子结点可能是普通的文件或者是空目录
(5)路上节点(从二叉树树顶深度优先往下走)中的非叶子节点一定是目录

疑问:

1.我们为什么要采用路径的方式找到一个文件呢?如何理解?
一定会存在多个文件,找文件必须采用唯一标识文件的方式,那就是通过路径标识的
2.为什么是唯一的?
一个目录可以放很多目录,一个结点可以放很多结点。一个子结点照样也可以有很多结点,但是任何一个结点都只有一个父结点。所以从根结点往下找路径是唯一的。

区分绝对路径和相对路径

针对下面这个目录结构
在这里插入图片描述
linux中表示一个文件的路径方案:绝对路径和相对路径
绝对路径:从根目录开始一直到要找的叶子结点叫做绝对路径
相对路径:相对当前位置找路径
注意
(1)绝对路径:不用随意更改,一直是有效的(一般在配置文件中使用)
(2)相对路径:相对当前的位置,虽是唯一的,但是范围是有限制的有效范围(手写,比如命令行)
举例:
绝对路径表示:比如/home/bit/test.c
相对路径表示:比如当前所在位置是dev,表示test.c的相对路径为…/home/bit/test.c

4.mkdir指令

作用:

创建目录

用法:

(1)mkdir 路径 名字 (在指定的路径下创建该名字的目录)
(2)mkdir 名字 (在当前路径下创建该名字的目录)
(3)mkdir -p dd/dd1/dd2/dd3 创建一串目录
在这里插入图片描述

补充解释:tree dd意思是以树状结构,以dd为入口,旗下所有的叶子结点全部显示出来
如何在系统中安装tree命令?
(1)如果是root用户 yum install -y tree
(2)如果是普通用户,
指令如下:
su (把自己变成root用户,输入密码)
whoami (看一下当前用户是什么,如果是root,执行下一步)
yum install -y tree

5.rmdir指令和rm指令

用法:

(1)rmdir 目录名 (只能删除空目录)
(2)rm 选项 文件名 (rm指令可以删除文件,也可以删除目录,目录为空可以删除,目录不为空也可以删除)
选项有:
-f 删除不需要提示,直接删除
-i 删除前注意询问确认
-r 删除目录及其下所有文件
在这里插入图片描述

危险指令

如果是root用户,危险指令rm -rf /

这条指令将系统中的各种库,指令,配置文件,软件,操作系统预装的软件…一键删除,意味着linux要重装,但不代表把linux系统中所有文件都删除,比如正在使用的文件即使是root也无法删除
处理方法:如果是云服务器的话,在对应的网页后端点击重装系统

6.man指令

作用:

查指令和C接口

用法:

(1)man 手册编号 命令
(2)man linux中的指令
在这里插入图片描述

7. 小的文本编辑器nano

在这里插入图片描述

8.cp指令

作用:

(1)拷贝文件或目录

拷贝文件
cp 源文件或目录 目标文件或目录
在这里插入图片描述
拷贝整个目录
✨指定名称
cp -r 源目录 目标目录指定名称
(test目录及其子目录一定构成树结构,在拷贝时要保证递归拷贝,用-r将test拷贝到指定名称的目录)
在这里插入图片描述
✨不指定名称
在这里插入图片描述

(2)拷贝时对文件进行重命名
cp 源文件或目录 目标文件或目录/重命名的名字
在这里插入图片描述

用法:

(1)cp 源文件 目标文件
(2)cp 源文件或目录 目标文件或目录/重命名的名字
(3)cp -r 源目录 目标目录指定名称
(4)cp -r 源目录 目标目录不指定名称
(5)如果拷贝时不想有任何提示,可以加上-f选项
cp -rf 源文件/目录 目标文件/目录

9.mv指令

作用:

(1)将文件剪切到另一个新目录中
(2)将文件重命名

用法:

mv 源文件 目标

目标是目录,下面没有指定的文件或者文件夹,叫剪切
目标是普通文件名,就是重命名
目标不存在,把它当做重命名

示例:

在这里插入图片描述
在这里插入图片描述

10.cat指令

作用:

打印普通文件中的内容

用法:

(1)cat单独出现,默认是从键盘文件读取内容,退出用ctrl+C
(2)cat [选项] 文件名:从文件中读取内容
[常用选项]
-b 对非空输出行编号
-n 对输出的所有行编号
-s 不输出多行空行(如果有多行空行,打印时将多行空行打印成一行空行)
(3)cat <文件名
<叫做输入重定向(本来应该从键盘文件中读入数据,变成了从指定的文件中读取对应的数据)

✨重点补充:
(1)在这里插入图片描述
指令中的>是输出重定向,它所做的工作如下:
🎐新建一个文件
🎐本来应该显示到显示器的内容,写入了文件中,这个操作叫做输出重定向
(2)文件=内容+属性
(3)理念:linux下一切皆文件!
向显示器打印–>向显示器写入
从键盘读取数据–>从键盘读入
这里的显示器,键盘都是文件
向显示器文件写入:在这里插入图片描述
(4)输出重定向的特点
每次写入到文件之前,要先清空原始文件中的内容
在这里插入图片描述
如果文件只以写的方式打开,打开之前这个文件是先被清空的,后续的操作都是在被清空的基础下
注意:打开文件内容不一定会清空文件内容,以w方式打开会清空,以a方式打开不会清空,会追加文件内容
(5)利用输出重定向可以做什么?
🎐创建一个空文件
在这里插入图片描述
🎐清空文件内容
在这里插入图片描述
(6)追加重定向 >>
就是把文件打开,不清空里面的内容,写入时在文件的结尾写入,不断让文件的内容增多。
在这里插入图片描述
(7)默认程序运行的时候,会打开三个输入输出流:
标准输入:键盘
标准输出:显示器
标准错误:显示器
以上对应的设备一定以文件的形式呈现出来。
在这里插入图片描述
在这里插入图片描述
(8)重定向既修改了文件的内容,又修改了文件的属性

11.tac指令

作用:

从文件的尾部向前去打印,倒着去看文件

用法:

tac 文件名

示例:

在这里插入图片描述

12.more指令

作用:

查看大文件内容

用法:

more [选项] 文件名
常用选项:
-n 对输出的所有行进行编号
-q 退出more

注意:

回车键可以下翻,但是不可以进行上翻操作

13.less指令

作用:

查看大文件内容,less与more类似,但使用less可以随意浏览文件,而more只能下翻不能上翻,而且less在查看之前不会加载整个文件。

用法:

less [选项] 文件名
常用选项:
-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串 向下搜索字符串的功能
?字符串 向上搜索字符串的功能

14.head指令

作用:

只看文件的开头,默认是开头前10行

用法:

head -n 文件名

n根据要显示的行数更改相应的数字

15.tail指令

作用:

只看文件的末尾,默认是末尾的后10行

用法:

tail -n 文件名

n根据要显示的行数更改相应的数字

如何拿到文件内容的某个区间行(比如一个大文件的500-510行的内容)?

🎐方法1
先提取到文件的前510行
head -510 big.txt
把前510行刚打印的文件写到临时文件中
head -510 big.txt>tmp.txt
然后把临时文件的后10行拿到
tail -10 tmp.txt
🎐方法2
先截取文件前510行,将指令结果交给下个指令截取后10行
head -510 big.txt | tail -10
这个竖划线叫管道,这里的管道文件相当于方法一中的临时文件
✨在Linux中,将多条具有输入输出能力的指令用管道 | 连接起来,形成一个类似于流水线的工作

16.wc指令

用法及作用:

wc 文件名 :统计一个文件有多少行数和字符数
wc -l 文件名 : 统计一个文件的行数

示例:

在这里插入图片描述

17.uniq指令

用法及作用:

uniq 文件名 : 对相邻的信息进行压缩和去重
(意思是相邻的多行相同的内容合为一行)

示例:

在这里插入图片描述

18.sort指令

用法及作用:

sort 文件名 : 对文件内容直接做排序
在这里插入图片描述

在这里插入图片描述
将文件所有相同内容进行去重:先排序后去重
在这里插入图片描述

19.date指令

作用:

date指定格式显示时间

用法:

date+%Y-%m-%d_%H:%M:%S
使用者可以设定想要显示的格式,格式设定为一个加号后接数个标记,标记列表如下:
%Y 年份
%m 月
%d 日
%H 小时
%M 分
%S 秒

时间戳

(1)时间转换为时间戳:date +%s
在这里插入图片描述
(2)时间戳转换为时间:date -d@时间戳
在这里插入图片描述
可以控制转换为时间的格式:
date +%Y-%m-%d_%H:%M:%S -d@时间戳
在这里插入图片描述

(3)时间戳:是从格林威治的1970年1月1日的午夜0点开始经过的秒数,这是一个线性增长的数字,时间戳具有唯一性。

20.cal指令

作用:

用来查看日历等时间信息

用法:

cal [选项] [年份]
常用选项:
-3 显示系统前一个月,当前月,下一个月的日历

示例:

在这里插入图片描述
cal 2023
在这里插入图片描述

21.find指令

作用:

查找文件

用法:

find 路径 -name 要查找的指令或者文件名
在这里插入图片描述

22.grep指令

作用:

基于文件内容对行进行过滤

用法:

grep [选项] ‘要搜索的字符串’ 文件名

在文件中搜索字符串,将找到的行打印出来

常用选项:
-i :忽略大小写的不同,所有大小写视为相同
-n:顺便输出行号
-v :反向选择,显示出没有要搜索的字符串的行的内容

✨文件名处可以写多个文件名,代表在多个文件中搜索,查询结果前会显示文件名,当只在一个文件中搜索时,查询结果不显示文件名

✨上下键可以对历史指令查看。
✨对历史指令进行搜索:
ctrl+R
出现在这里插入图片描述
输入要搜索的指令内容
搜索完毕后按左右键进行局部修改
不想用按ctrl+C
✨ps ajx 查看系统中所有运行的进程
ps ajx | grep sshd 把系统中的sshd任务调出来
✨history 可以查看所有历史指令

23.which指令

作用及用法:

(1)专门用来查指令
which 指令
(要想知道指令在哪里安装着)
在这里插入图片描述
(2)可以用which快速地在linux当中直接找到该指令所在的linux目录是什么,会以绝对路径的方式显示指令的位置以及指令的信息。在这里插入图片描述

注意:

which是基于文件名的操作

24.whereis指令

作用:

用来查找包含关键字的文档,查指令
(查指令会查包含指令的可执行程序和压缩包)
✨whereis是基于文件名做搜索

25.zip和unzip指令

什么是打包和压缩

打包: 把所有的东西放在一起,也就是把多个文件合为一个文件
压缩: 把所有东西按一定算法减小体积

为什么要打包压缩

打包是为了防止丢失
压缩是为了减小体积,方便网络传输

如何打包和压缩

zip 压缩文件名.zip 目录或文件
(功能:将目录或文件压缩成zip格式)
✨注意:-r 递归处理,将指定目录下的所有文件和子目录一并处理

如何解压

(1)unzip 压缩包名 :会解压到当前路径
(2)unzip 压缩包名 -d 指定路径 :会解压到指定路径

26.tar指令

作用:

打包/解包,不打开它,直接看内容

用法:

(1)打包并压缩
tar -cvf test.tgz ./*

-cvf是选项,test.tgz是tgz类型的压缩包,最后是要打包压缩的文件或目录的路径

(2)解压并解包
tar -xzf test.tgz

-xzf是选项

(3)解压到指定路径
tar -xzf test.tgz -C 指定目录

[常用选项]
-c 建立一个压缩文件的参数指令
-x 解开一个压缩文件的参数指令
-z 是否同时具有gzip的属性?即是否需要用gzip压缩?
-f 使用档名,请留意,在f之后要立即接文档名,不要再加参数
-C 解压到指定目录

27.bc指令

作用:

一般结合管道进行数据计算

用法:

echo “1+2+3” | bc
在这里插入图片描述

28.uname指令

用法及作用:

(1)uname -r
只查看当前体系结构和内核版本
(2)uname -a
详细输出所有信息,依次为内核名称、主机名、内核版本号、内核版本、硬件名、处理器类型、硬件平台类型、操作系统名称
在这里插入图片描述

29.重要的几个热键

[Tab]按键

具有命令补全和档案补齐的功能

[Ctrl+c]按键

让当前的程序停掉

[Ctrl+d]按键

按一次 退出登录
按两次 退出XShell

30.shutdown指令

作用:

关机

用法:

shutdown [选项]
常用选项:
-h 将系统的服务停掉后,立即关机
-r 再将系统的服务停掉后就重新启动
-t sec (-t后面加秒数,也就是过几秒后关机的意思)

31.拓展命令

安装和登录命令

login
shutdown
halt
reboot
install
mount
umount
chsh
exit
last

文件处理命令

file
mkdir
grep
dd
find
mv
diff
cat
ln

系统管理相关命令

df
top
free
quota
at
lp
adduser
groupadd
kill
crontab

网络操作命令

ifconfig
ip
ping
netstat
telnet
ftp
route
rlogin
rcp
finger
mail
nslookup

系统安全相关命令

passwd
su
umask
chgrp
chmod
chown
chattr
sudo ps
who

其他命令

tar
unzip
gunzip
unarj
mtools
man
unendcode
uudecode


总结

linux中的常用指令就分享到这里啦,如果对友友们有帮助的话可以点赞收藏博客,关注后续的Linux专栏学习内容哦~✨

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1119011.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【912.排序数组】

目录 一、题目描述二、算法原理2.1快速排序2.2归并排序 三、代码实现3.1快排代码实现3.2归并代码实现 一、题目描述 二、算法原理 2.1快速排序 2.2归并排序 三、代码实现 3.1快排代码实现 class Solution { public:int getRandom(int left,int right,vector<int>&…

CoDeSys系列-2、CoDeSys安装及Windows下创建项目测试

CoDeSys系列-2、CoDeSys安装及Windows下创建项目测试 文章目录 CoDeSys系列-2、CoDeSys安装及Windows下创建项目测试一、前言二、下载及安装三、Windows下软PLC项目创建及运行测试1、创建HMI工程1.1、新建标准工程&#xff1a;1.2、添加可视化对象&#xff1a;1.3、拖动添加拨码…

31二叉树-递归遍历二叉树

目录 LeetCode之路——145. 二叉树的后序遍历 分析 LeetCode之路——94. 二叉树的中序遍历 分析 LeetCode之路——145. 二叉树的后序遍历 给你一棵二叉树的根节点 root &#xff0c;返回其节点值的 后序遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出…

【Java 进阶篇】深入理解 Bootstrap 导航条与分页条

Bootstrap 是一个强大的前端框架&#xff0c;为网页和应用程序开发提供了丰富的组件和工具。其中&#xff0c;导航条和分页条是两个常用的组件&#xff0c;用于创建网站的导航和分页功能。本篇博客将深入探讨 Bootstrap 导航条和分页条的使用&#xff0c;适用于那些希望提升网页…

Mathematics-Vocabulary·数学专业英语词汇

点击查看: Mathematics-Vocabulary数学专业英语词汇点击查看: Mathematics-Vocabulary-Offline数学专业英语词汇离线版本 Chinese-English translation英译汉The study of mathematics in English requires understanding the subject-specific vocabulary and terminology. Ma…

Golang数组:全面指南与实际示例

揭示Golang数组的威力&#xff1a;从基础到高级技巧 Golang数组是数据存储的基本构建块&#xff0c;为开发人员提供了多种可能性。在这篇正式的博客文章中&#xff0c;我们将探讨Golang数组&#xff0c;从基础知识到高级技巧。通过实际示例和正式的语气&#xff0c;我们将揭示…

SpringBoot+微信小程序实现的酒店预订小程序系统 附带详细运行指导视频

文章目录 一、项目介绍二、项目介绍三、运行截图四、主要代码 一、项目介绍 项目演示地址&#xff1a;视频地址 二、项目介绍 项目描述&#xff1a;这是一个基于SpringBoot微信小程序框架开发的酒店预订小程序系统。首先&#xff0c;这是一个前后端分离的项目&#xff0c;代…

记录:Unity脚本的编写4.0

目录 前言导入音乐编写脚本 前言 之前使用脚本对uniry中的模型进行了控制&#xff0c;诸如使用键盘控制对象模型的移动或者使用鼠标对对象模型进行角度的切换&#xff08;或者是类似的东西&#xff09;&#xff0c;而我们在游戏的过程中&#xff0c;总是伴随着一些好听的bgm&a…

打造自己的前端组件库(奶妈版,超详细)

打造自己的前端组件库 demo是开源的&#xff0c;自己上npm 或者 github 上都能搜到 新建vue项目(sass js vue2) vue create yt-ui 修改文件目录(如下) 修改&#xff1a; 1.src 更名 examples; 2. src/components移动到项目最外层&#xff1b;3.vue.config.js更改入口文件 /…

论文阅读[51]通过深度学习快速识别荧光组分

【论文基本信息】 标题&#xff1a;Fast identification of fluorescent components in three-dimensional excitation-emission matrix fluorescence spectra via deep learning 标题译名&#xff1a;通过深度学习快速识别 三维激发-发射矩阵荧光光谱中的荧光组分 期刊与年份&…

安装IDEA

文章目录 前言一、下载二、安装1.选择目录2.安装配置3.安装完成 三、安装插件1.安装插件2.注册账号3.关闭共享4.使用插件 总结 前言 亚马逊推出了编码助手CodeWhisperer&#xff0c;以插件的形式配合IDE使用&#xff0c;推荐个人练习使用&#xff0c;敏感项目不建议&#xff1…

栈和队列的C++模拟实现

一、栈stack 1.介绍&#xff08;库里面的文档介绍&#xff09; 1. stack是一种容器适配器&#xff0c;专门用在具有后进先出操作的上下文环境中&#xff0c;其删除只能从容器的一端进行元素的插入与提取操作。 2. stack是作为容器适配器被实现的&#xff0c;容器适配器即是对…

YOLOv5算法改进(16)— 增加小目标检测层 | 四头检测机制(包括代码+添加步骤+网络结构图)

前言:Hello大家好,我是小哥谈。小目标检测层是指在目标检测任务中用于检测小尺寸目标的特定网络层。由于小目标具有较小的尺寸和低分辨率,它们往往更加难以检测和定位。YOLOv5算法的检测速度与精度较为平衡,但是对于小目标的检测效果不佳,根据一些论文,我们可以通过增加检…

ThreeJS光照类型详解及示例演示

ThreeJS中的光照计算是基于物理学的光照模型&#xff0c;通过模拟光线与物体表面的交互作用&#xff0c;计算出物体表面在各个方向上的明暗程度&#xff0c;从而实现逼真的视觉效果。具体来说&#xff0c;ThreeJS采用了基于Lambertian反射模型和Phong着色模型的光照计算方式&am…

Qt设置horizontal line 和vertical line的颜色

在Qt中&#xff0c;要设置水平线&#xff08;QFrame&#xff09;和垂直线&#xff08;QSplitter&#xff09;的颜色&#xff0c;可以使用样式表&#xff08;stylesheet&#xff09;或者直接设置QPalette。 下面是两种设置的示例&#xff1a; 使用样式表&#xff08;stylesheet…

Day6力扣打卡

打卡记录 统计无向图中无法互相到达点对数&#xff08;并查集 / DFS&#xff09; 链接 并查集 思路&#xff1a;用并查集将连通区域的连在一起&#xff0c;再遍历所有点&#xff0c;用hash表存储不同连通块的元素个数&#xff0c;然后 乘积和 便是答案。 注意&#xff1a; /…

QT中窗口自绘制效果展示

项目中需要使用QT进行窗口自绘&#xff0c;前期先做一下技术探索&#xff0c;参考相关资料代码熟悉流程。本着代码是最好的老师原则&#xff0c;在此记录一下。 目录 1.运行效果 2.代码结构 3.具体代码 1.运行效果 2.代码结构 3.具体代码 myspeed.pro QT core gui…

经典算法试题(二)

文章目录 一、岁数1、题目2、思路讲解3、代码实现4、结果 二、打碎的鸡蛋1、题目2、思路讲解3、代码实现4、结果 三、分糖1、题目2、思路讲解3、代码实现4、结果 四、兔子产子1、题目2、思路讲解3、代码实现4、结果 五、矩阵问题1、题目2、思路讲解3、代码实现4、结果 六、谁是…

一例jse蠕虫的分析

概述 这是一例jse格式的蠕虫病毒&#xff0c;会隐藏系统中所有的doc、docx和rtf文件&#xff0c;创建同名的.jse文件&#xff0c;诱导用户点击执行&#xff0c;通过感染U盘和网络驱动器、光盘刻录临时文件夹、html文件进行传播。 这个样本是使用JScript语言编写的加密脚本文件…

全网最丑焊锡教程(仅排针焊接心得)

一直以来玩各种开发板&#xff0c;焊接水平太差始终是阻碍我买性价比高的板子的最大原因。淘宝上好多芯片搭载上肥猪流板子是不包排针焊接的。终于下定决心要克服这个困难。不过&#xff0c;只是会焊接排针在高手面前最好不要说自己会焊锡&#xff0c;这应该是两码事。 首先上…