第六天 文件的属性

2019-07-31  本文已影响0人  杨小倪

1.文件属性

# 第一列第一个字符          表示文件类型

# rw-r--r--                           权限

#  1                                    表示被链接的次数(硬链接)

#  root                              文件的拥有者(用户)

#  root                               文件的拥有组(用户组)

#  14                                 文件大小

#  Jul 27 16:35                 文件的创建日期以及时间

#  111.txt                         文件的名称

2.文件的类型

# -    表示文件(普通文件 图片 压缩包)

#  s  表示本地进程与进程间的一种通讯方式

# b   (block) 块设备  (硬盘  光盘 分区)

# c     字符设备(用于用户的输入输出的)

#  l    (link) 链接文件(类似于Windows的快捷方式)

# d     (directory)  目录(类似于Windows的文件夹)

*对于一些文件无法精准的区分类型,可以使用file查看*

#因为Linux不区分后缀,后缀通常是用来方便我们自己识别的

3.链接文件

#  文件有文件名与数据,在Linux上被分成了两部分:用户数据(user data)与元数据(metadata)

#用户数据,即文件数据块(data lock),数据块是记录文件真实内容的地方,我们将其称为Block

#元数据,即文件的福建属性,如文件大小、创建使劲按、所有者等信息。我们将其称为inode

!!!!在Linux中,inode是文件元数据的一部分但其并不包括文件名,inode号即索引节点号

文件名只是为了方便人们的记忆和使用,系统或程序通过inode号寻找正确的文件数据块

软连接(类似于Windows的快捷方式)

#软连接文件会将inode指向源文件的block,当我们访问这个软连接文件时,其实是在访问源文件

#当我们对一个文件创建多个软连接时,其实就是多个inode指向同一个block。当我们删除软连接文件时,其实只是删除了一个inode指向并不会对源文件造成影响,但如果删除的时源文件,则会造成所有软连接文件失效。

#软连接的使用场景  (很少对文件做软连接)

1.软件升级 软件回退 

[root@oldboy-01 ~]# mkdir qq_v1.1

[root@oldboy-01 ~]# ln -s /root/qq_v1.1/ /root/qq

#升级

[root@oldboy-01 ~]# mkdir qq_v1.2

[root@oldboy-01 ~]# rm -f /root/qq && ln -s /root/qq_v1.2/ /root/qq

#回退

[root@oldboy-01 ~]# rm -f /root/qq && ln -s /root/qq_v1.1/ /root/qq

2.代码升级 秒级

3.不方便移动目录

#文件太大,不方便移动,可以创建软连接

#文件太重要,不方便移动,软连接

4.执行流程

1.当我们执行一个命令时,整个命令的执行流程如下:

*1)判断命令库是否通过绝对路径执行

*2)判断命令是否存在alias别名

*3)判断用户输入的是内置命令还是外置命令

*4)Bash内置命令直接执行,外置命令检查是否有无存在缓存

#当有缓存,命令改变了路径时

解决方法:删除缓存

执行命令的新绝对路径

*5)通过PATH路径查找命令,有,执行 ,无,报错

#判断命令是外置还是内置

type -a +命令   

上一篇下一篇

猜你喜欢

热点阅读