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

【Linux基础】Linux基本指令

目录

1、pwd 指令

2、clear 指令

3、ls 指令

1、ls 显示当前路径下的文件或者目录名称 

2、ls -l 显示当前路径下的文件或者目录的更详细的属性信息

3、ls -a :显示所有文件,包括隐藏文件

4、ls -d 将目录像文件一样显示,而不是显示其下的文件。

5、ls -R 列出所有子目录下的文件。(递归)

4、cd 指令

1、cd .. 返回上级目录

2、cd ~:进入用户家目录(主目录)

3、cd -:返回最近访问的目录 

4、相对路径与绝对路径

5、whoami 指令 && who 指令

1、whoami 指令

2、who 指令

6、tree 指令

tree . 以树形结构显示

7、touch 指令

 1、用来创建普通文件

​编辑

2、更新对应的时间

3、stat 指令

8、mkdir 指令

9、rmdir 指令 && rm 指令

1、rmdir 指令

2、rm 指令

10、man 指令 

11、cp 指令

1、echo 指令

2、> 输出重定向操作符 

3、>> 追加输出重定向符 

4、cp 指令

5、创建文件的多种方式

12、mv 指令

13、 cat 指令 && tac 指令

1、cat 指令

2、tac 指令

14、more 指令

15、less 指令

16、head 指令

17、tail 指令

管道 | 

18、时间相关的指令

1、date 指令

2、cal 指令

19、find 指令

20、which 指令

1、alias 指令

2、whereis指令

21、grep 指令

1、ps ajx 查看系统中的进程

2、wc 指令

3、sort 指令 && uniq 指令

22、zip/unzip 指令

23、tar 指令

24、bc 指令

25、uname 指令

26、热键

1、查看 cpu

2、查看内存

3、查看磁盘


1、pwd 指令

语法: pwd

功能:显示当前用户所处的路径


2、clear 指令

语法:clear

功能:清屏


3、ls 指令

语法:ls [选项] [目录或文件]

功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

选项:

           -l 列出文件的详细信息。

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

           -d 将目录像文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录

           -R 列出所有子目录下的文件。(递归)

           -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件

           -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件

           -n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)

           -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表 示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别)

           -r 对目录反向排序。

           -t 以时间排序。         

           -s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)

           -1 一行只输出一个文件

1、ls 显示当前路径下的文件或者目录名称 

2、ls -l 显示当前路径下的文件或者目录的更详细的属性信息

ll 是 ls -l 的简写,和 ls -l 是等价的。

3、ls -a :显示所有文件,包括隐藏文件

在 Linux 下,以 . 开头的文件叫做隐藏文件,只用 ls 默认不显示隐藏文件。

ls -al 和 ls -la 选项的组合顺序可以变。

还可以分开写选项: ls -a -l 或者 ls -l -a

当面目录与上级目录

4、ls -d 将目录像文件一样显示,而不是显示其下的文件。

ls -l 文件名,显示特定的文件名属性信息。

ls -l 目录名,显示该目录下的文件名属性信息。

ls -l  -d  或者 ls  -ld 我们只想显示目录的属性信息,-d 不进人目录,显示目录本身。

5、ls -R 列出所有子目录下的文件。(递归)


4、cd 指令

语法:  cd 目录名

功能:改变工作目录。将当前工作目录改变到指定的目录下。

cd .. : 返回上级目录 ,不断回退,回退到根目录就无法回退了。

cd ~:进入用户家目录

cd -:返回最近访问的目录

cd /home/myname/test/ : 绝对路径

cd ../test/ : 相对路径

1、cd .. 返回上级目录

2、cd ~:进入用户家目录(主目录)

在 Linux 系统中,~ 是一个特殊的符号,它代表当前用户的主目录(家目录),直接登录开始所处的路径就是家目录。所以 cd ~ 命令的作用是将当前工作目录切换到当前用户的主目录,而不是根目录。

  • 普通用户主目录:对于普通用户,主目录通常位于/home目录下。例如,用户名为myname 的普通用户,其主目录一般是/home/myname。当这个用户执行 cd ~ 命令时,就会进入/home/myname目录。
  • root用户主目录root用户是特殊的超级用户,它的主目录是/root。当root用户执行cd ~ 命令时,会进入/root目录。这与普通用户主目录的位置是不同的,体现了root用户的特殊地位以及权限上的差异。

3、cd -:返回最近访问的目录 

cd - 两个热点路径下,来回切换

4、相对路径与绝对路径

目录的组织结构是一颗多叉树。

  • 当我们在mytest目录下,要找 test.c

绝对路径:/home/bit/mytest/test.c,路径唯一的,从家目录开始,工作路径在哪里都是正确的。

  • 当我们在cpp_project目录下,要找 test.c

相对路径:../../test.c  也就是相对于我来说,上级目录的上级目录下的文件就是test.c,工作路径改变了之后,相对路径就不一定是正确的了。

为什么我们喜欢用路径来标识一个文件:

同一个目录下不能出现同名文件名的,我们一般从家目录开始到指定文件下,路径+文件名 = 具有唯一性


5、whoami 指令 && who 指令

1、whoami 指令

显示当前用户的用户名

2、who 指令

当前 Linux 下的在线用户,who 当前谁登录了我的主机,比如你把你的用户名给了你的朋友就可以who一下查看他是不是在线


6、tree 指令

当我们初次使用 tree 指令的时候,会出现找不到 tree命令的情况,这个时候就需要安装该指令,root 用户下 tree 命令的安装:yum install -y tree

安装完成之后就可以使用了

tree . 以树形结构显示

也可以 tree / 根目录


7、touch 指令

1、用来创建普通文件。

2、touch 同名已经存在的文件:除了创建文件,还可以更新对应的时间。

3、ls -l 可以查看最近一次修改时间。

 1、用来创建普通文件

2、更新对应的时间

3、stat 指令

stat 文件名:stat 命令提供了比 ls -l 更详细的关于文件或文件系统的信息。

8、mkdir 指令

功能:Linux中创建空目录。

常用选项:-p选项,创建一串路径(目录),递归建立多个目录。


9、rmdir 指令 && rm 指令

1、rmdir 指令

rmdir是一个与mkdir相对应的命令。

mkdir是建立目录,而 rmdir是删除命令。

语法:rmdir [-p][dirName]。

适用对象:具有当前目录操作权限的所有使用者

功能:rmdir 删除空目录。

常用选项: -p 选项:-p 选项它的全称是--parents。当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除,也就说当使用 rmdir -p 时,它会删除指定的空目录,并且如果该目录的父目录在删除子目录后也变成空目录,那么它会一并删除父目录,以此类推,沿着目录树向上删除空的目录分支。

rmdir就是删除空目录,好像没什么用啊?

rmdir:存在的意义就是在我们找到所有空目录,把这些空目录全部删除。

如果删除的子目录是空目录,会继续往上删除

2、rm 指令

语法:rm [-f -i -r -v][dirName/dir]

适用对象:所有使用者

功能:删除文件或目录

常用选项:

-f 即使文件属性为只读(即写保护),亦直接删除。

-i 删除前逐一询问确认

-r 删除目录及其下所有文

rm 使用的更多,rm 默认删除普通文件。

如果删除目录,本质是删除该目录及目录下的所有的目录和普通文件,我们都知道目录是像一棵树状结构,也就是递归定义的,加上  -r 递归删除。

防止它总问我们要不要删除,假设目录下有1000个文件我们要确认1000次吗?

我们可以加上 -f  等价于force,强制删除。

加上 -i 选项防止你不小心删除,会提醒你是不是要删除

注意:rm -rf /  是一个非常危险的命令。

rm  -rf-r选项表示递归删除,意思是如果要删除的是一个目录,会连同目录下的所有文件和子目录一起删除;-f选项表示强制删除,不会提示用户进行确认。而/代表根目录,它是整个文件系统的起点,包含了系统中的所有文件、目录、配置文件、程序等。

执行后的严重后果:

  • 系统崩溃:执行这个命令后,基本上系统所有的文件都会被删除。这包括操作系统的内核文件、系统配置文件、用户文件、应用程序文件等。系统会因为缺少关键的文件和组件而无法正常运行,导致系统崩溃。
  • 数据丢失:所有用户的数据,无论是文档、图片、视频,还是数据库中的数据等,都会被清除。这是一种灾难性的数据丢失情况,几乎没有恢复的可能。
  • 软件损坏:所有安装在系统中的软件也会被删除。包括系统自带的软件工具(如文本编辑器、网络工具等)和用户安装的第三方软件(如办公软件、开发工具等)。这意味着系统需要重新安装操作系统和所有软件才能恢复正常使用。

10、man 指令 

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。

访问Linux手册页的命令是 man

语法: man [选项] 命令

常用选项:

-k 根据关键字搜索联机帮助

num 只在第 num 章节找

-a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按 下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。

解释一下,man手册分为8章 :

1、 是普通的命令

2、 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文 件)

3、 是库函数,如printf,fread

4、 是特殊文件,也就是/dev下的各种设备文件

5、是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义

6、 是给游戏留的,由各个游戏自己定义

7、 是附件还有一些变量,比如向environ这种全局变量在这里就有说明

8、 是系统管理用的命令,这些命令只能由root使用,如ifconfig

当我们初次使用man手册的时候,还没有安装,所以我们需要安装一下:

yum install -y man-pages

man手册分为8页,每一页都是对应的内容,就像我们查字典一样

可以直接 man 我们要查的函数

printf 还可以直接在命令行界面,和C语言一样


11、cp 指令

1、echo 指令

语法:echo [字符串],
功能:向显示器文件进行写入内容

2、> 输出重定向操作符 

例如,echo "Hello, World!" > output.txt。这里  > 符号就是输出重定向操作符,它的作用是将echo命令输出的 “Hello, World!” 这个字符串发送到 output.txt 文件中。如果output.txt文件不存在,系统会创建一个新的文件;如果文件已经存在,那么文件原有的内容会被覆盖。

cat 就是查看文件里面的内容,后面会提到。

3、>> 追加输出重定向符 

它用于将命令的输出追加到一个文件的末尾。例如,假设已经有一个文件test.txt,里面的内容是 “Hello”。如果执行命令echo " World!" >> test.txt,那么test.txt文件的内容就会变成 “Hello World!”。也就是说,>>会把新的输出内容添加到文件已有的内容之后,而不会像>(覆盖输出重定向符)那样覆盖文件原有的内容。

注意:echo命令本身会在输出的文本末尾添加一个换行符。这是echo命令的默认行为。所以每次追加内容时,新的内容就会从新的一行开始。

4、cp 指令

语法:cp [选项] 源文件或目录 目标文件或目录

功能: 复制文件或目录

说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录, 则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。

常用选项:

-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在

-i 或 --interactive 覆盖文件之前先询问用户

-r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理

-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

如果我现在要拷贝目录呢,如何拷贝?

-r 选项,递归处理,将指定目录下的文件与子目录一并处理。

一般我们还加上 -f 选项--force, 强行复制文件或目录, 不论目的文件或目录是否已经存在。

-i 选项,如果有同名文件冲突了会出现提示,防止误操作就覆盖了旧文件

5、创建文件的多种方式


12、mv 指令

功能:

 1,类似剪切,移动文件目录

 2,对文件或者目录进行重命名

常用选项: 

  -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖

  -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖

注意:为什么剪切不带 –r ???方便操作,设计就是这样的,记住就行。

重命名目录或者文件


13、 cat 指令 && tac 指令

cat 和 tac 并不适合查看大型文本,只适合查看小文本或者代码片段。

1、cat 指令

语法:cat [选项][文件]

功能:cat 文件名,查看目标文件的内容

常用选项:

-n 对输出的所有行编号

-b 对非空输出行编号

-s 不输出多行空行

1、我们先默认生成10000行文本,然后重定向到文件中

cnt=0; while [ $cnt -le 10000 ] ; do echo "hello world [$cnt]"; let cnt++; done

内容重定向到文件中

 2、nano 的安装

我们写入了10000行内容之后,就使用nano 文件名来编辑或者查看里面的内容

在使用nano之后会出现下面这种情况,所以我们需要安装nano,nano就相当于记事本

进去之后,ctrl + x 退出 nano

yum install -y nano

cat  -n 文件名,加上行号 

2、tac 指令

cat 变成 tac,命令反过来,内容也反过来了,逆序输出

tac命令中,没有-n 选项。它主要的功能就是简单地将文件内容按行逆序输出。


14、more 指令

语法:more [选项][文件]

功能:more 命令,功能类似 cat

常用选项: -n 对输出的所有行编号 ,输 q 退出 more

比较适合查看大文本,可以按回车或者空格进行下翻。

more中也支持查找:  /

more 可以进行查找

进入more 之后输入 / 后面接你要查找的内容。

你可以多次使用/来进行查找。每次使用/后,输入新的查找字符串,more就会再次从当前位置开始在后续内容中查找匹配的字符串。例如,如果你已经查找了一个单词 “example”,之后你还可以使用/查找另一个单词 “test”,more会根据你的新输入继续在剩余的内容中进行查找操作。

注意:也就是说找到了某个位置前面的都不能找了,只能往后找。


15、less 指令

less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,查看大本用的比较多,可以支持上下翻,也可以用 / 查找的内容

选项:

-i :忽略搜索时的大小写

-N:  显示每行的行号

/ 字符串:向下搜索“字符串”的功能

?字符串:向上搜索“字符串”的功能

n:重复前一个搜索(与 / 或 ? 有关)

N:反向重复前一个搜索(与 / 或 ? 有关)

q: 退出

注意:当输入/后跟上要查找的字符串,less会从当前位置开始向下查找文件中首次出现该字符串的位置,并将光标定位在那里,。

less命令功能更强大。当你使用/向前搜索找到一个位置后,你仍然可以通过?操作符来搜索当前位置之前的内容。例如,你使用/找到了文件中间部分的一个特定单词,之后你可以使用?从这个位置开始往文件开头方向搜索其他单词。而且,less还支持一些快捷键来方便地在文件的不同部分跳转和重新搜索,比如g键可以跳转到文件开头,G键可以跳转到文件末尾,这些功能使得less能够灵活地在文件的任何部分进行搜索操作。


16、head 指令

head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。

选项:-n 显示的行数


17、tail 指令

tail命令主要用于查看文件的末尾几行内容,和 head 类似,当不带选项的时候,默认显示最后10行。这在查看日志文件时特别有用,因为日志文件通常是不断追加内容的,最新的记录都在文件末尾。例如,tail /var/log/messages可以查看系统日志文件/var/log/messages的最后几行,快速了解系统最近的活动记录,如系统错误、服务启动和停止等相关信息。

有了 head 和 tail 怎么查看中间的内容呢,比如要查看在 [1000,1010]的内容,怎么查看???

1、取前1011行重定向到临时文件中
2,在临时文件中取最后10 行内容

这个解决方案就需要创建临时文件,不太好,我们需要来学习另外一个东西就是管道。

管道 | 

管道:| 两边都是指令,把上一个指令的执行结果作为下一个指令的执行数据源。

初次接触,也可以这样理解管道  |  就是一个临时文件,先把内容处理到该临时文件,再从该文件处理下一条指令。

利用管道我们就可以很好的拿到中间的内容了。

 more -1010 test.txt 这个命令是显示 test.txt 文件的全部内容。在这里,-1010并不是more命令的标准选项(more命令常用选项有-d用于显示提示信息等),所以这个参数可能被忽略,more会像执行more test.txt一样,逐页显示文件的全部内容,所以是整个文件内容的最后三行。

查看完 [1000,1010]的内容后,逆置并取前面3行内容,该如何操作呢???

先拿到这部分内容后,还是利用管道,然后 tac 逆置,再取前 3 行。


18、时间相关的指令

了解就可以了,没什么用

1、date 指令

date 指定格式显示时间: date  +%Y:%m:%d

date 用法:date  [OPTION]... [+FORMAT]

常用的标记列表如下:

%Y : 完整年份

%m : 月份 (01..12)

%d : 日 (01..31)

%H : 小时(00..23)

%M : 分钟(00..59)

%S : 秒(00..61)

 时间戳

时间戳:是从1970年1月1日(UTC/GMT的午夜)开始到现在所累计的秒数

date -d@1508749502,可以转化成显示时间

2、cal 指令

打印日历


19、find 指令

语法: find pathname -options

功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)

常用选项:-name   按照文件名查找文件。

当我们使用 find 的时候,可能需要访问磁盘,导致效率降低。

根据给的路径用来查找,也可以不带路径直接查找,就相当于我们在Windows中搜索文件类似。


20、which 指令

你曾经用过的命令在什么路径下

1、alias 指令

对指令进行重命名,也就是起别名

取别名:alias 别名=‘指令名称’

取消别名:unalias 别名

2、whereis指令

近似查找与查找内容近似的。


21、grep 指令

grep:文本内容的行过滤工具,默认会匹配文本中的关键字,匹配上的进行行显示

语法: grep [选项] 搜寻字符串文件

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

常用选项:

-i :忽略大小写的不同,所以大小写视为相同

-n :顺便输出行号

-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行

选项可以组合使用  –ni    -nv   –niv。

1、ps ajx 查看系统中的进程

ps ajx :显示所有用户的进程(包括其他用户的进程)

后序进程那块会提到,这里我们主要是使用 grep 过滤

我们查看 test 的进程,直接用 grep

2、wc 指令

用于统计文件相关信息的命令。它主要统计文件中的行数、单词数和字节数。例如,对于一个文本文件,wc命令可以快速告诉你这个文件包含多少行文字、多少个单词以及文件大小是多少字节。

常用选项:

-l 选项:用于统计文件行数。比如wc -l file,会输出文件file的行数,可用于查看代码、日志等文件的长度。

-w 选项:用来统计单词数。例如wc -w text,输出文件text里的单词数量,有助于分析文本的词汇规模。

-c 选项:计算文件字节数,即文件大小。像wc -c data,能得出文件data的字节大小,用于估算磁盘占用或传输时间。

3、sort 指令 && uniq 指令

sort 命令用于对文本文件的行进行排序,不去重。

uniq 命令用于去除相邻的重复行。


22、zip/unzip 指令

语法: zip 压缩文件.zip  目录或文件

功能: 将目录或文件压缩成zip格式

常用选项:-r

注意:zip 默认对一个目录进行打包压缩的时候,只会对目录文件进行打包压缩 

默认没有这两条指令,我们可以安装这两条命令(zip 和 unzip是两个命令) :

yum install -y unzip zip

zip 默认对一个目录进行打包压缩的时候,只会对目录文件进行打包压缩 

 所以我们需要带上选项 -r 进行压缩

加上 -r 选项,也和前面类似,递归处理里面的文件以及文件夹

1. zip默认对一个目录进行打包压缩的时候,只会对目录文件打包压缩

2. zip -r 你的压缩包(自定义名称) dir(要打包压缩的目录)
3. unzip 你的压缩包(自定义名称),在当前目录下进行解包解压的功能

使用unzip的时候,如果我们想解压到指定目录呢,该如何操作???

当需要将文件解压到特定的路径时,就需要使用-d 选项。


23、tar 指令

打包/解包,使用 -t 选项可以不打开解压,直接看内容

常用选项:

-c :建立一个压缩文件的参数指令(create 的意思);

-z :是否同时具有 gzip 的属性,亦即是否需要用 gzip 压缩。

-f :使用档名,请留意,在 f 之后要立即接档名,不要再加参数!

-t :查看 tarfile 里面的文件

-x :解开一个压缩文件的参数指令

-v :压缩的过程中显示文件(显示解压的过程),这个常用,但不建议用在背景执行过程。

-j :是否同时具有 bzip2 的属性,亦即是否需要用 bzip2 压缩

-C : 解压到指定目录

tar -czf  my.tgz new_file  打包并压缩         -tf 不解压直接查看里面的内容

tar -xzf  my.tgz   解包并解压

在选项中不带 - 也可以

在选项中不带 - 也可以 

-v 选项,显示解包解压的过程,以及压缩的过程也可以带-v

-t 不解压,直接查看压缩包里的内容


24、bc 指令

bc是一个用于任意精度算术运算的命令行工具,就类似于计算器。

bc 不常用,也支持管道。


25、uname 指令

如何在Linux中查看计算机体系结构

uname命令用于打印系统相关的信息。这些信息可以帮助用户了解操作系统的基本情况,如内核版本、主机名等。

常用选项:

-a 选项: 输出内核名称(LinuxDarwin等,取决于操作系统)、主机名、内核版本号、处理器类型(如x86_64)、硬件平台以及操作系统名称等一系列信息。

-r 选项:只打印内核版本号。例如,在 Linux 系统中,输出可能是

         3.10.0-1160.119.1.el7.x86_64

这个选项聚焦于内核版本相关的信息,对于关注系统内核更新情况或者检查软件与内核版本兼容性的场景非常有用。

-m 选项:uname -m用于打印计算机的硬件架构(即体系结构)。输出可能是x86_64,这表示计算机是 64 位的 x86 架构;如果输出是i686,则表示是 32 位的 x86 架构。


26、热键

ctrl + c : 终止前台的异常程序

tab命令:自动补齐

按上下键:翻历史命令

ctrl + d: 退出当前用户,退出一层

ctrl + r: 直接输入历史命令中的片段,比如输入while,左右选择。

\ : 反斜杠续行, 输入这个表示换行写,一行写不下


lscpu 命令: 查看cpu信息
lsmem 命令: 查看内存信息
df -h 命令: 查看磁盘使用情况


1、查看 cpu

lscpu 命令用于获取 CPU 架构、核心数、线程数、CPU 频率等多种信息。

2、查看内存

lsmem 命令用于显示系统内存的相关信息。 

3、查看磁盘

df -h 命令是一个用于检查磁盘空间使用情况的命令。其中,df是 “disk free” 的缩写,-h是一个选项。这个命令会显示文件系统的磁盘空间使用信息,包括每个文件系统的总容量、已使用的空间、可用空间以及已使用空间的百分比等

相关文章:

【Linux基础】Linux基本指令

目录 1、pwd 指令 2、clear 指令 3、ls 指令 1、ls 显示当前路径下的文件或者目录名称 2、ls -l 显示当前路径下的文件或者目录的更详细的属性信息 3、ls -a :显示所有文件,包括隐藏文件 4、ls -d 将目录像文件一样显示,而不是显示其…...

【RISC-V CPU debug 专栏 3 -- Debugging RISC-V Cores】

文章目录 RISC-V 调试规范开源与多样性挑战调试规范的重要性外部调试支持的主要组件调试功能Lauterbach 的贡献RISC-V 调试规范 调试 RISC-V 内核涉及许多独特的挑战,这是由 RISC-V 的开源特性和多样化的生态系统所决定的。为了避免专有调试接口的泛滥,RISC-V 基金会内的工作…...

思科实现网络地址转换(NAT)和访问控制列表(ACL)和动态路由配置并且区分静态路由和动态路由配置。

实验拓扑(分为静态路由和动态路由两种) 静态路由互通 动态路由互通 实验背景 这个是想实现外网与内网的连接跟网络的探讨,最终实现互通以及使用并且在网络地址转换后能使用网络然后再这个基础上再配置访问控制列表和网络地址转换的的学习过程。 实验需了解的知识…...

基于 Python、OpenCV 和 PyQt5 的人脸识别上课打卡系统

大家好,我是Java徐师兄,今天为大家带来的是基于 Python、OpenCV 和 PyQt5 的人脸识别上课签到系统。该系统采用 Python 语言开发,开发过程中采用了OpenCV框架,Sqlite db 作为数据库,系统功能完善 ,实用性强…...

MySQL 复合查询

实际开发中往往数据来自不同的表,所以需要多表查询。本节我们用一个简单的公司管理系统,有三张表EMP,DEPT,SALGRADE 来演示如何进行多表查询。表结构的代码以及插入的数据如下: DROP database IF EXISTS scott; CREATE database IF NOT EXIST…...

【Leetcode】19. 删除链表的第N个节点

【Leetcode】19. 删除链表的第N个节点 1. 题目介绍2. 方法一:计算链表长度逻辑流程:代码复杂度分析 1. 题目介绍 题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,…...

flutter底部导航栏中间按钮凸起,导航栏中间部分凹陷效果

关键代码: Scaffold中设置floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked和extendBody: true, BottomAppBar中设置shape: const CircularNotchedRectangle() Scaffold(extendBody: true,//body是否延伸脚手架底部,在底部导航…...

<项目代码>YOLOv8 红绿灯识别<目标检测>

YOLOv8是一种单阶段(one-stage)检测算法,它将目标检测问题转化为一个回归问题,能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法(如Faster R-CNN),YOLOv8具有更高的…...

HTMLHTML5革命:构建现代网页的终极指南 - 4. 使用元素

HTML&HTML5革命:构建现代网页的终极指南 4. 使用元素 大家好,我是莫离老师。 到目前为止,我们已经了解了 HTML 和 HTML5 的基础概念,并且选择了适合自己的开发工具。 今天,我们将迈出实际开发的第一步&#xff0c…...

使用 Selenium 和 Python 爬取腾讯新闻:从基础到实践

使用 Selenium 和 Python 爬取腾讯新闻:从基础到实践 在这篇博客中,我们将介绍如何利用 Selenium 和 Python 爬取腾讯新闻的内容,并将结果保存到 CSV 文件中。本教程包含以下内容: 项目简介依赖安装实现功能的代码实现中的关键技…...

CAD深度清理工具-AVappsDrawingPurge9.0.0(2024.8.27版本) 支持版本CAD2022-2025-供大家学习研究参考

图形文件DWG体积很大:通常没有明显的数据。同时,还其他症状包括: (1)无法复制和粘贴图元。 (2)悬挂较长时间选择文本与 “特性”选项板上打开。 (3)图形文件需要很长时间…...

vue3+vite使用vite-plugin-electron-renderer插件和script-loader插件有冲突

报错信息:Error: Dynamic require of "path" is not supported 报错问题是在使用vite-plugin-electron-renderer插件不支持import动态引入,该报错信息并不准确,实际原因是vite-plugin-electron-renderer插件和script-loader插件有…...

领养我的宠物:SpringBoot开发指南

第2章 开发环境与技术 本章节对开发宠物领养系统需要搭建的开发环境,还有宠物领养系统开发中使用的编程技术等进行阐述。 2.1 Java语言 Java语言是当今为止依然在编程语言行业具有生命力的常青树之一。Java语言最原始的诞生,不仅仅是创造者感觉C语言在编…...

直击高频编程考点:聚焦新版综合编程能力考查汇总

目录 一、业务性编程和广度能力考查 (一)基本定义 (二)必要性分析 二、高频考查样题(编程扩展问法) 考题1: 用java 代码实现一个死锁用例,说说怎么解决死锁问题?(高…...

【EI会议征稿 | ACM出版 】第六届计算机信息和大数据应用国际学术会议(CIBDA 2025)

大会官网:www.ic-cibda.org 大会时间:2025年3月14-16日 大会地点:中国-武汉 收录检索:EI Compendex,Scopus 接受/拒稿通知:投稿后约3~8天 大会简介 第六届计算机信息和大数据应用国际学术会议&#xff…...

淘宝商品数据获取:Python爬虫技术的应用与实践

引言 随着电子商务的蓬勃发展,淘宝作为中国最大的电商平台之一,拥有海量的商品数据。这些数据对于市场分析、消费者行为研究、商品推荐系统等领域具有极高的价值。然而,如何高效、合法地从淘宝平台获取这些数据,成为了一个技术挑…...

【C++】getchar() 与 putchar() 的深入解析

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯函数原型及头文件包含💯 getchar() 和 putchar() 的基本概念2.1 getchar() 函数2.2 putchar() 函数 💯输入输出的关系与返回值的解释3.1 getchar() …...

Centos7安装MySQL8.0详细教程(压缩包安装方式)

本章教程,主要介绍如何在Centos7上安装MySQL8.0版本数据库(压缩包安装方式) 一、卸载系统自带的 Mariadb 1、查询 rpm -qa|grep mariadb2.、卸载 如果有查询结果,就进行卸载,没有就跳过该步骤。 rpm -e --nodeps mar…...

深度学习的python基础(1)

一.tensor创建 1.张量的定义 张量在形式上就是多维数组,例如标量就是0维张量,向量就是一维张量,矩阵就是二维张量,而三维张量就可以想象RGB图片,每个channel是一个二维的矩阵,共有三个channel&#xff0…...

拥抱 OpenTelemetry:阿里云 Java Agent 演进实践

作者:陈承 背景 在 2018 年的 2 月,ARMS Java Agent 的第一个版本正式发布,为用户提供无侵入的的可观测数据采集服务。6 年后的今天,随着软件技术的迅猛发展、业务场景的逐渐丰富、用户规模的快速增长,我们逐渐发现过…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...

基于Springboot+Vue的办公管理系统

角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...

【Android】Android 开发 ADB 常用指令

查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...

解析奥地利 XARION激光超声检测系统:无膜光学麦克风 + 无耦合剂的技术协同优势及多元应用

在工业制造领域,无损检测(NDT)的精度与效率直接影响产品质量与生产安全。奥地利 XARION开发的激光超声精密检测系统,以非接触式光学麦克风技术为核心,打破传统检测瓶颈,为半导体、航空航天、汽车制造等行业提供了高灵敏…...

k8s从入门到放弃之Pod的容器探针检测

k8s从入门到放弃之Pod的容器探针检测 在Kubernetes(简称K8s)中,容器探测是指kubelet对容器执行定期诊断的过程,以确保容器中的应用程序处于预期的状态。这些探测是保障应用健康和高可用性的重要机制。Kubernetes提供了两种种类型…...

性能优化中,多面体模型基本原理

1)多面体编译技术是一种基于多面体模型的程序分析和优化技术,它将程序 中的语句实例、访问关系、依赖关系和调度等信息映射到多维空间中的几何对 象,通过对这些几何对象进行几何操作和线性代数计算来进行程序的分析和优 化。 其中&#xff0…...

linux设备重启后时间与网络时间不同步怎么解决?

linux设备重启后时间与网络时间不同步怎么解决? 设备只要一重启,时间又错了/偏了,明明刚刚对时还是对的! 这在物联网、嵌入式开发环境特别常见,尤其是开发板、树莓派、rk3588 这类设备。 解决方法: 加硬件…...

零基础在实践中学习网络安全-皮卡丘靶场(第十一期-目录遍历模块)

经过前面几期的内容我们学习了很多网络安全的知识,而这期内容就涉及到了前面的第六期-RCE模块,第七期-File inclusion模块,第八期-Unsafe Filedownload模块。 什么是"遍历"呢:对学过一些开发语言的朋友来说应该知道&…...

【Vue】scoped+组件通信+props校验

【scoped作用及原理】 【作用】 默认写在组件中style的样式会全局生效, 因此很容易造成多个组件之间的样式冲突问题 故而可以给组件加上scoped 属性, 令样式只作用于当前组件的标签 作用:防止不同vue组件样式污染 【原理】 给组件加上scoped 属性后…...

开源项目实战学习之YOLO11:12.6 ultralytics-models-tiny_encoder.py

👉 欢迎关注,了解更多精彩内容 👉 欢迎关注,了解更多精彩内容 👉 欢迎关注,了解更多精彩内容 ultralytics-models-sam 1.sam-modules-tiny_encoder.py2.数据处理流程3.代码架构图(类层次与依赖)blocks.py: 定义模型中的各种模块结构 ,如卷积块、残差块等基础构建…...