常用的基本命令(必掌握)

news/2024/6/2 7:47:39/文章来源:https://blog.csdn.net/weixin_52385232/article/details/126616565

目录

常用的基本命令(必掌握)

目录管理

基本属性

修改文件属性

文件内容查看

拓展:Linux 链接概念


常用的基本命令(必掌握)

目录管理

绝对路径和相对路径

我们知道Linux的目录结构为树状结构,最顶级的目录为根目录 /。

其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们。

在开始本教程前我们需要先知道什么是绝对路径与相对路径。

绝对路径:

路径的写法,由根目录 / 写起,例如:/usr/share/doc 这个目录。

相对路径:

路径的写法,不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成:cd ../man 这就是相对路径的写法啦!

处理目录的常用命令

接下来我们就来看几个常见的处理目录的命令吧:

  • ls: 列出目录

  • cd:切换目录

  • pwd:显示目前的目录

  • mkdir:创建一个新的目录

  • rmdir:删除一个空的目录

  • cp: 复制文件或目录

  • rm: 移除文件或目录

  • mv: 移动文件与目录,或修改文件与目录的名称

你可以使用 man [命令] 来查看各个命令的使用文档,如 :man cp。

ls (列出目录)

在Linux系统当中, ls 命令可能是最常被运行的。

语法:

[root@www ~]# ls [-aAdfFhilnrRSt] 目录名称

选项与参数:

  • -a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)

  • -l :长数据串列出,包含文件的属性与权限等等数据;(常用)

将目录下的所有文件列出来(含属性与隐藏档)

[root@www ~]# ls -al ~

cd (切换目录)

cd是Change Directory的缩写,这是用来变换工作目录的命令。

语法:

cd [相对路径或绝对路径]

测试:

# 切换到用户目录下
[root@kuangshen /]# cd home  # 使用 mkdir 命令创建 kuangstudy 目录
[root@kuangshen home]# mkdir kuangstudy# 进入 kuangstudy 目录
[root@kuangshen home]# cd kuangstudy# 回到上一级
[root@kuangshen kuangstudy]# cd ..# 回到根目录
[root@kuangshen kuangstudy]# cd /# 表示回到自己的家目录,亦即是 /root 这个目录
[root@kuangshen kuangstudy]# cd ~

接下来大家多操作几次应该就可以很好的理解 cd 命令的。

pwd ( 显示目前所在的目录 )

pwd 是 Print Working Directory 的缩写,也就是显示目前所在目录的命令。

[root@kuangshen kuangstudy]#pwd [-P]

选项与参数:-P :显示出确实的路径,而非使用连接(link) 路径。

测试:

# 单纯显示出目前的工作目录
[root@kuangshen ~]# pwd
/root# 如果是链接,要显示真实地址,可以使用 -P参数
[root@kuangshen /]# cd bin
[root@kuangshen bin]# pwd -P
/usr/bin

mkdir (创建新目录)

如果想要创建新的目录的话,那么就使用mkdir (make directory)吧。

mkdir [-mp] 目录名称

选项与参数:

  • -m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~

  • -p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!

测试:

# 进入我们用户目录下
[root@kuangshen /]# cd /home# 创建一个 test 文件夹
[root@kuangshen home]# mkdir test# 创建多层级目录
[root@kuangshen home]# mkdir test1/test2/test3/test4
mkdir: cannot create directory ‘test1/test2/test3/test4’:
No such file or directory  # <== 没办法直接创建此目录啊!# 加了这个 -p 的选项,可以自行帮你创建多层目录!
[root@kuangshen home]# mkdir -p test1/test2/test3/test4# 创建权限为 rwx--x--x 的目录。
[root@kuangshen home]# mkdir -m 711 test2
[root@kuangshen home]# ls -l
drwxr-xr-x 2 root root  4096 Mar 12 21:55 test
drwxr-xr-x 3 root root  4096 Mar 12 21:56 test1
drwx--x--x 2 root root  4096 Mar 12 21:58 test2

rmdir ( 删除空的目录 )

语法:

rmdir [-p] 目录名称

选项与参数:-p :连同上一级『空的』目录也一起删除

测试:

# 看看有多少目录存在?
[root@kuangshen home]# ls -l
drwxr-xr-x 2 root root  4096 Mar 12 21:55 test
drwxr-xr-x 3 root root  4096 Mar 12 21:56 test1
drwx--x--x 2 root root  4096 Mar 12 21:58 test2# 可直接删除掉,没问题
[root@kuangshen home]# rmdir test# 因为尚有内容,所以无法删除!
[root@kuangshen home]# rmdir test1
rmdir: failed to remove ‘test1’: Directory not empty# 利用 -p 这个选项,立刻就可以将 test1/test2/test3/test4 依次删除。
[root@kuangshen home]# rmdir -p test1/test2/test3/test4

注意:这个 rmdir 仅能删除空的目录,你可以使用 rm 命令来删除非空目录,后面我们会将!

cp ( 复制文件或目录 )

语法:

[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
[root@www ~]# cp [options] source1 source2 source3 .... directory

选项与参数:

  • -a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)

  • -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);

  • -d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;

  • -r:递归持续复制,用於目录的复制行为;(常用)

  • -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;

  • -i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)

  • -l:进行硬式连结(hard link)的连结档创建,而非复制文件本身。

  • -s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;

  • -u:若 destination 比 source 旧才升级 destination !

测试:

# 找一个有文件的目录,我这里找到 root目录
[root@kuangshen home]# cd /root
[root@kuangshen ~]# ls
install.sh
[root@kuangshen ~]# cd /home# 复制 root目录下的install.sh 到 home目录下
[root@kuangshen home]# cp /root/install.sh /home
[root@kuangshen home]# ls
install.sh# 再次复制,加上-i参数,增加覆盖询问?
[root@kuangshen home]# cp -i /root/install.sh /home
cp: overwrite ‘/home/install.sh’? y # n不覆盖,y为覆盖

rm ( 移除文件或目录 )

语法:

rm [-fir] 文件或目录

选项与参数:

  • -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;

  • -i :互动模式,在删除前会询问使用者是否动作

  • -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!

测试:

# 将刚刚在 cp 的实例中创建的 install.sh删除掉!
[root@kuangshen home]# rm -i install.sh
rm: remove regular file ‘install.sh’? y
# 如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!# 尽量不要在服务器上使用 rm -rf /

mv  ( 移动文件与目录,或修改名称 )

语法:

[root@www ~]# mv [-fiu] source destination
[root@www ~]# mv [options] source1 source2 source3 .... directory

选项与参数:

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

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

  • -u :若目标文件已经存在,且 source 比较新,才会升级 (update)

测试:

# 复制一个文件到当前目录
[root@kuangshen home]# cp /root/install.sh /home# 创建一个文件夹 test
[root@kuangshen home]# mkdir test# 将复制过来的文件移动到我们创建的目录,并查看
[root@kuangshen home]# mv install.sh test
[root@kuangshen home]# ls
test
[root@kuangshen home]# cd test
[root@kuangshen test]# ls
install.sh# 将文件夹重命名,然后再次查看!
[root@kuangshen test]# cd ..
[root@kuangshen home]# mv test mvtest
[root@kuangshen home]# ls
mvtest

基本属性

看懂文件属性

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。

在Linux中我们可以使用ll或者ls –l命令来显示一个文件的属性以及文件所属的用户和组,如:

实例中,boot文件的第一个属性用"d"表示。"d"在Linux中代表该文件是一个目录文件。

在Linux中第一个字符代表这个文件是目录、文件或链接文件等等:

  • 当为[ d ]则是目录

  • 当为[ - ]则是文件;

  • 若是[ l ]则表示为链接文档 ( link file );

  • 若是[ b ]则表示为装置文件里面的可供储存的接口设备 ( 可随机存取装置 );

  • 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标 ( 一次性读取装置 )。

接下来的字符中,以三个为一组,且均为『rwx』 的三个参数的组合。

其中,[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。

要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号[ - ]而已。

每个文件的属性由左边第一部分的10个字符来确定(如下图):

从左至右用0-9这些数字来表示。

第0位确定文件类型,第1-3位确定属主(该文件的所有者)拥有该文件的权限。第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。

其中:

第1、4、7位表示读权限,如果用"r"字符表示,则有读权限,如果用"-"字符表示,则没有读权限;

第2、5、8位表示写权限,如果用"w"字符表示,则有写权限,如果用"-"字符表示没有写权限;

第3、6、9位表示可执行权限,如果用"x"字符表示,则有执行权限,如果用"-"字符表示,则没有执行权限。

对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。

同时,在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。

文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。

因此,Linux系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。

在以上实例中,boot 文件是一个目录文件,属主和属组都为 root。

修改文件属性

1、chgrp:更改文件属组

chgrp [-R] 属组名 文件名

-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。

2、chown:更改文件属主,也可以同时更改文件属组

chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

3、chmod:更改文件9个属性

chmod [-R] xyz 文件或目录

Linux文件属性有两种设置方法,一种是数字,一种是符号。

Linux文件的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。

先复习一下刚刚上面提到的数据:文件的权限字符为:『-rwxrwxrwx』, 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下:

r:4     w:2         x:1

每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为:[-rwxrwx---] 分数则是:

  • owner = rwx = 4+2+1 = 7

  • group = rwx = 4+2+1 = 7

  • others= --- = 0+0+0 = 0

chmod 770 filename

可以自己下去多进行测试!

文件内容查看

概述

Linux系统中使用以下命令来查看文件的内容:

  • cat 由第一行开始显示文件内容

  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!

  • nl  显示的时候,顺道输出行号!

  • more 一页一页的显示文件内容

  • less 与 more 类似,但是比 more 更好的是,他可以往前翻页!

  • head 只看头几行

  • tail 只看尾巴几行

你可以使用 man [命令]来查看各个命令的使用文档,如 :man cp。

cat 由第一行开始显示文件内容

语法:

cat [-AbEnTv]

选项与参数:

  • -A :相当於 -vET 的整合选项,可列出一些特殊字符而不是空白而已;

  • -b :列出行号,仅针对非空白行做行号显示,空白行不标行号!

  • -E :将结尾的断行字节 $ 显示出来;

  • -n :列印出行号,连同空白行也会有行号,与 -b 的选项不同;

  • -T :将 [tab] 按键以 ^I 显示出来;

  • -v :列出一些看不出来的特殊字符

测试:

# 查看网络配置: 文件地址 /etc/sysconfig/network-scripts/
[root@kuangshen ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes

tac

tac与cat命令刚好相反,文件内容从最后一行开始显示,可以看出 tac 是 cat 的倒着写!如:

[root@kuangshen ~]# tac /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
BOOTPROTO=dhcp
DEVICE=eth0

nl  显示行号

语法:

nl [-bnw] 文件

选项与参数:

  • -b :指定行号指定的方式,主要有两种:-b a :表示不论是否为空行,也同样列出行号(类似 cat -n);-b t :如果有空行,空的那一行不要列出行号(默认值);

  • -n :列出行号表示的方法,主要有三种:-n ln :行号在荧幕的最左方显示;-n rn :行号在自己栏位的最右方显示,且不加 0 ;-n rz :行号在自己栏位的最右方显示,且加 0 ;

  • -w :行号栏位的占用的位数。

测试:

[root@kuangshen ~]# nl /etc/sysconfig/network-scripts/ifcfg-eth0
1DEVICE=eth0
2BOOTPROTO=dhcp
3ONBOOT=yes

more  一页一页翻动

在 more 这个程序的运行过程中,你有几个按键可以按的:

  • 空白键 (space):代表向下翻一页;

  • Enter     :代表向下翻『一行』;

  • /字串     :代表在这个显示的内容当中,向下搜寻『字串』这个关键字;

  • :f      :立刻显示出档名以及目前显示的行数;

  • q       :代表立刻离开 more ,不再显示该文件内容。

  • b 或 [ctrl]-b :代表往回翻页,不过这动作只对文件有用,对管线无用。

[root@kuangshen etc]# more /etc/csh.login
....(中间省略)....
--More--(28%) # 重点在这一行喔!你的光标也会在这里等待你的命令

less   一页一页翻动,以下实例输出/etc/man.config文件的内容:

less运行时可以输入的命令有:

  • 空白键  :向下翻动一页;

  • [pagedown]:向下翻动一页;

  • [pageup] :向上翻动一页;

  • /字串   :向下搜寻『字串』的功能;

  • ?字串   :向上搜寻『字串』的功能;

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

  • N     :反向的重复前一个搜寻 (与 / 或 ? 有关!)

  • q     :离开 less 这个程序;

[root@kuangshen etc]# more /etc/csh.login
....(中间省略)....
:   # 这里可以等待你输入命令!

head  取出文件前面几行

语法:

head [-n number] 文件

选项与参数:-n 后面接数字,代表显示几行的意思!

默认的情况中,显示前面 10 行!若要显示前 20 行,就得要这样:

[root@kuangshen etc]# head -n 20 /etc/csh.login

tail  取出文件后面几行

语法:

tail [-n number] 文件

选项与参数:

  • -n :后面接数字,代表显示几行的意思

默认的情况中,显示最后 10 行!若要显示最后 20 行,就得要这样:

[root@kuangshen etc]# tail -n 20 /etc/csh.login

拓展:Linux 链接概念

Linux 链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。

情况下,ln 命令产生硬链接。

硬连接

硬连接指通过索引节点来进行连接。在 Linux 的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在 Linux 中,多个文件名指向同一索引节点是存在的。比如:A 是 B 的硬链接(A 和 B 都是文件名),则 A 的目录项中的 inode 节点号与 B 的目录项中的 inode 节点号相同,即一个 inode 节点对应两个不同的文件名,两个文件名指向同一个文件,A 和 B 对文件系统来说是完全平等的。删除其中任何一个都不会影响另外一个的访问。

硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

软连接

另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于 Windows 的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。比如:A 是 B 的软链接(A 和 B 都是文件名),A 的目录项中的 inode 节点号与 B 的目录项中的 inode 节点号不相同,A 和 B 指向的是两个不同的 inode,继而指向两块不同的数据块。但是 A 的数据块中存放的只是 B 的路径名(可以根据这个找到 B 的目录项)。A 和 B 之间是“主从”关系,如果 B 被删除了,A 仍然存在(因为两个是不同的文件),但指向的是一个无效的链接。

测试:

[root@kuangshen /]# cd /home
[root@kuangshen home]# touch f1 # 创建一个测试文件f1
[root@kuangshen home]# ls
f1
[root@kuangshen home]# ln f1 f2     # 创建f1的一个硬连接文件f2
[root@kuangshen home]# ln -s f1 f3   # 创建f1的一个符号连接文件f3
[root@kuangshen home]# ls -li       # -i参数显示文件的inode节点信息
397247 -rw-r--r-- 2 root root     0 Mar 13 00:50 f1
397247 -rw-r--r-- 2 root root     0 Mar 13 00:50 f2
397248 lrwxrwxrwx 1 root root     2 Mar 13 00:50 f3 -> f1

从上面的结果中可以看出,硬连接文件 f2 与原文件 f1 的 inode 节点相同,均为 397247,然而符号连接文件的 inode 节点不同。

# echo 字符串输出 >> f1 输出到 f1文件
[root@kuangshen home]# echo "I am f1 file" >>f1
[root@kuangshen home]# cat f1
I am f1 file
[root@kuangshen home]# cat f2
I am f1 file
[root@kuangshen home]# cat f3
I am f1 file
[root@kuangshen home]# rm -f f1
[root@kuangshen home]# cat f2
I am f1 file
[root@kuangshen home]# cat f3
cat: f3: No such file or directory

通过上面的测试可以看出:当删除原始文件 f1 后,硬连接 f2 不受影响,但是符号连接 f1 文件无效;

依此您可以做一些相关的测试,可以得到以下全部结论:

  • 删除符号连接f3,对f1,f2无影响;

  • 删除硬连接f2,对f1,f3也无影响;

  • 删除原文件f1,对硬连接f2没有影响,导致符号连接f3失效;

  • 同时删除原文件f1,硬连接f2,整个文件会真正的被删除。

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

有序的Map集合

我们通常使用的Map集合是HashMap&#xff0c;在大多数情况下HashMap可以满足我们的要求&#xff0c;但是HashMap有一个缺点&#xff1a;HashMap****是无序的&#xff0c;即其迭代顺序与其key或value的大小无关。而在某些情况下&#xff0c;如果我们需要Map集合里的元素有序&…

HTML5期末大作业:商城网站设计——仿天猫在线商城(HTML和CSS实现天猫在线商城网站)

常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他等网页设计题目, A…

xubuntu16.04系统中隐藏网络连接的弹窗提示

项目场景&#xff1a; 在xubuntu16.04的系统上部署了一款软件&#xff0c;全屏运行中&#xff0c;如果网络连接异常会有弹窗提示&#xff0c;很影响软件的使用体验&#xff0c;需要将此弹窗屏蔽或隐藏。 问题描述 弹窗如下图&#xff1a; 排查思路&#xff1a; 当弹窗出来时…

springboot新冠疫苗预约管理系统毕业设计-附源码241530

目 录 摘要 1 绪论 1.1研究意义 1.2研究现状 1.3系统开发技术的特色 1.4论文结构与章节安排 2 新冠疫苗预约管理系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1数据增加流程 2.3.2数据修改流程 2.3.3数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.…

Git工具快速入门_一小时速成

本篇教程不包含安装教程。 Git工具快速入门1.Git简介2.创建并获取本地仓库3.Git的常用指令2.1 查看git状态2.2 添加文件到工作区2.2.1 全部文件提交到工作区2.3 提交文件到仓库2.4 查看提交日志2.5 修改文件2.6 回滚到之前版本练习4.分支4.14.2创建本地分支4.3 切换分支4.4 合并…

Git从入门到项目实战,一篇文章吃透Git

博主今天刚学完Git就来总结笔记了&#xff0c;Git好强大&#xff0c;不愧是目前世界上最先进的分布式版本控制系统 ✨即使再小的帆也能远航✨目录&#x1f50e;Git版本控制&#x1f525;常见版本控制工具&#x1f525;版本控制分类&#x1f44c;本地版本控制&#x1f44c;集中版…

猿创征文 |【SpringBoot2】快速上手SpringBoot

&#x1f34e;个人主页&#xff1a;亮点 &#x1f34a;个人信条&#xff1a;理想如果不向现实做一点点屈服&#xff0c;那么理想也将归于尘土 文章目录一、SpringBoot概述二、创建SpringBoot工程的四种方式1、基于Idea创建SpringBoot工程&#xff08;1&#xff09;步骤&#xf…

【Java刷题进阶】基础入门篇⑨

&#x1f4e9;很多朋友都问我学完基础知识以后怎样提高编程水平&#xff1f;当然是刷题啦&#xff01;很多小伙伴都在纠结从哪里开始&#xff0c;今天给大家推荐一个身边朋友都在使用的刷题网站&#xff1a;点击进入牛客网刷题吧&#xff01; 各大互联网大厂面试真题&#xff0…

app毕业设计作品安卓毕业设计成品基于Uniapp+SSM实现的智能课堂管理

&#x1f345;文末获取联系&#x1f345; 一、项目介绍 含文档PPT源码等]精品基于UniappSSM实现的智能课堂管理APP[包运行成功]》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程等 软件开发环境及开发工具&#xff1a; 开发语言&#xff1a;Java 框架…

【论文分享】LibAFL: A Framework to Build Modular and Reusable Fuzzers

1. 简介 AFL是软件安全测试领域的一个重要里程碑&#xff0c;使得fuzzing成为了一个主要的研究领域&#xff0c;并带动了大量的研究去提高fuzzing流水线上的各个方面。 许多研究是通过fork AFL的代码来进行实现的。虽然一开始看起来挺合适的&#xff0c;但是要把多种fork合并…

如何从容的打包上传图片对象--File,Blob,BASE64详解及转换方法

这里给大家分享我在网上总结出来的一些知识&#xff0c;希望对大家有所帮助 File() File() 构造器创建新的 File 对象实例。 语法 var myFile new File(bits, name[, options]);参数 bits 一个包含ArrayBuffer&#xff0c;ArrayBufferView&#xff0c;Blob&#xff0c;或者 DO…

广州市车联网先导区车联网先导区路侧感知技术规范

1 范围 本文件规定了广州市车联网先导区服务于车路协同自动驾驶的路侧感知系统总体架构、 功能要求与性能要求&#xff0c;以及路侧感知系统中相关设备的技术要求。 本文件适用于指导和规范广州市车联网先导区路侧感知系统的规划设计、建设部署、测 试示范和运营服务。 2 规…

搭建k8s集群

一、使用kubeadm搭建k8s集群(整理完成) kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 $ kubeadm init# 将一个 Node 节点加入到当前集群中 $ kubeadm join <Master节点的…

async,await总结

原文链接&#xff1a;https://blog.csdn.net/qq_47443027/article/details/118763485 原文链接&#xff1a;https://blog.csdn.net/qq_40893035/article/details/114396123 sync &#xff0c; await 一起使用&#xff0c;实际是为了解决异步操作的新方法 但是区别于 promise &…

Gvim计数器模板经典练习

Gvim计数器模板之基础练习 练习1 dout的初值为1b0&#xff0c;设计当收到5个en信号后&#xff0c;则dout输出1个周期的高电平&#xff0c;如图1所示&#xff0c;表1为练习1的信号列表。 信号列表 信号名 I/O 位宽 clk I 1 rst_n I 1 en I 1 dout O 1 表1 练习…

STM32笔记1-库函数模板工程创建

目录 1、工程文件夹配置 2、文件添加 3、KEIL5创建工程 4、Projecy中添加工作组 5、魔术棒配置 6、程序编写 7、模板下载连接 1、工程文件夹配置 电脑任意位置创建文件夹Test1&#xff0c;Test1中创建三个文件夹 User&#xff1a;用于存放用户Main.c、STM32F10.h头文件、…

Spring面试(六)WebMVC

文章目录Spring WebMVC 底层原理Spring WebMVC 处理请求的流程核心架构的具体流程步骤对上述流程的补充SpringMVC实现原理之DispatcherServlet的初始化过程Spring进阶 - SpringMVC实现原理之DispatcherServlet处理请求的过程MVC是什么&#xff1f;MVC设计模式的好处有哪些Sprin…

CAS(Compare and swap)比较并交换算法解析

CAS说明 CAS全称是Compare and swap。字面翻译的意思就是比较并交换。 CAS可以用来实现乐观锁&#xff0c;CAS中没有线程的上下文切换&#xff0c;减少了不必要的开销 说明&#xff1a;本文解析的JDK源码为open JDK 11版本。 CAS原理 CAS 操作包含三个操作数 —— 内存位置…

Nginx盗链和防盗链

目录 一、配置盗链 ①准备工作 ②配服务端192.168.58.58 ③配置盗链端192.168.58.58 Ⅰ配置地址映射 Ⅱ修改盗链端html ④在whindows里实验 Ⅰ修改windows hosts文件 添加地址映射 Ⅱwindows浏览器打开盗链端网站&#xff0c;直接可以访问到服务端图片 二、防盗链 ①添…

小程序 :自定义tabbar (名称后台获取)

一、自定义tabbar&#xff0c;名称前台固定 1、app.json 中的 “tabBar”&#xff0c;新增 “custom”: true 2、根目录下&#xff0c;与pages同级&#xff0c;新建 custom-tab-bar 文件夹&#xff0c;下新建 index component四项 index.wxml <cover-view class"root…