所属专栏:Linux学习❤️
🚀 >博主首页:初阳785❤️
🚀 >代码托管:chuyang785❤️
🚀 >感谢大家的支持,您的点赞和关注是对我最大的支持!!!❤️
🚀 >博主也会更加的努力,创作出更优质的博文!!❤️
🚀 >关注我,关注我,关注我,重要的事情说三遍!!!!!!!!❤️
在Linux中文件时不通过后缀名来区分文件类型
,那么我们怎么来区分文件的类型呢?通常通过件属性的第一个字符来区分文件的类型。
文件类型 | 所属意思 |
---|---|
d | 文件夹 |
- | 普通文件(文本,源代码,图片视频,库,可执行文件等) |
l | 软链接(类似Windows的快捷方式) |
b | 块设备文件(例如硬盘、光驱等) |
p | 管道文件 |
c | 字符设备文件(例如屏幕等串口设备) |
s | 套接口文件 |
“-”
表示普通文件,例如我们touch出来的一个文件:"d"
表示一个普通目录,例如我们用mkdir创建一个目录出来:"b"——block
,快设备文件,就有点类似于我们windows下的D盘C盘之类的。"c"——字符设备文件
,就是我们常见的键盘,显示器,这就是为什么我们之前说Linux下一切皆文件。“l"
——链接文件:链接文件有指向特点。
虽然Linux系统下是不通过后缀区分文件的
,但是Linux下的工具 例如gcc/g++这些工具是会通过后缀区分文件的
,所以这个时候如果我们改了可执行文件的后缀之后,gcc就不认识这个文件是可执行文件了,也就编译不了这个文件。功能说明:辨识文件类型。
语法:file [选项] 文件或目录…
常用选项:
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-z 尝试去解读压缩文件的内容
之前我们将文件权限的时都只是针对一个普通文件文件而言的,那么如果我如果要进入一个目录的话需要什么文件呢?
去掉r读权限:
去掉”w"写权限:
去掉“x"执行权限:
从上面的排除法我们可以知道,只有拥有"x”执行权限我们才可以进入目录。
那么r和w权限有什么用呢?
去掉目录的r权限:
我们会发现,目录没有了r权限后无法查看目录里面的信息,但是能创建文件。
去掉文件的 w 写权限:
我们会发现,目录没有了w权限后可以查看目录里面的信息,但是不能创建文件也不能删除文件以及修改文件信息。
总结:
1.可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.
2.可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容.
3.可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件.
权限都是固定的。
八进制的权限表示封顶是777,那为什么创建一个普通文件时664,而目录时775呢?
其实我们的目录的起始权限时777,
普通文件的起始权限时666。
但是系统当中除了有起始文件,还有一个概念叫umask叫做权限掩码。
它可以定制一个文件创建时的默认权限。这个默认权限就是最终创建出来的权限。
在系统当中想看到掩码只需要输入umask就行:
则是一个八进制的2转换成二进制就是:000 000 010而这个就叫做权限掩码。这个掩码的用途是:从起始权限中去掉umask中出现的权限(注意:这里的去掉不是减法,而是去掉对应位置的
)。
比如:我们的目录和文件:
也就是是说:默认权限 = 起始权限 & (~umask)
要是qfw用户他想它文件不被任何人操作,也可以修改他的权限
细心的伙伴会发现,在tmp这个文件中other权限后面还有一个符号t
我们先把这个t删除掉:
这个时候chuyang用户就生气了,qfw用户既然你不想让我访问你的文件,那我就删掉这个文件:
此时chuyang老铁就把这个文件给删除了
那么问题来了,如果说因为我不给你权限你就删除了,那这不就是Linux底下的一个bug吗,所以为了这个Linux就又给tmp这个文件加了一个权限t,叫做粘滞位。
当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由一、超级管理员删除二、该目录的所有者删除三、该文件的所有者删除
我们在Linux中显示一个会动的小火车:
yum install -y sl
输出sl就可以出现一个会动的小火车: