本文链接:
在linux下使用“ls-l”或者“ls-al”或者“ll”命令查看文件及目录详情时,shell中会显示出好几列的信息。平常也没如何注意过,明天突然心血来潮想了解一下,于是整理了这篇博客,以供参考:
首先给出一张典型的显示结果:
下边对其中的每一列进行详尽的剖析:
一、文件类型
表示该文件的类型:
“-”表示普通文件;
“d”表示目录;
“l”表示链接文件;
“p”表示管理文件;
“b”表示块设备文件;
“c”表示字符设备文件;
“s”表示套接字文件;
二、文件属性
以back_init文件为例,其属性可分为三段:[rwx][rwx][r-x],其中:
第一段表示文件创建者/所有者对该文件所具有的权限,第二段表示创建者/所有者所在的组的其他用户所具有的权限,第三段表示其他组的其他用户所具有的权限。
r(Readlinux 命令查询,读取权限):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
w(Write,写入权限):对文件而言,具有新增、修改文件内容的权限;对目录来说linux培训班,具有删掉、移动目录内文件的权限。
x(eXecute,执行权限):对文件而言,具有执行文件的权限;对目录来说,该用户具有步入目录的权限。
另外,这儿还有2个很特殊的属性,平常不怎样常见,这儿也顺带解释一下:
s或S(SUID,SetUID):可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源。请注意具备SUID权限的文件,黑客常常借助这些权限,以SUID配上root账号拥有者,无声无息地在系统中开扇侧门,供日后进出使用。
t或T(Sticky):/tmp和/var/tmp目录供所有用户暂时存取文件,亦称每个用户皆拥有完整的权限步入该目录,去浏览、删除和联通文件。
综合上去可得linux 命令查询,对于back_init文件,其创建者/所有者具有可读可写可执行的权限,其创建者/所有者所在的组的其他用户具有可读可写可执行的权限,其他组的其他用户则具有可读可执行但不可写的权限。
三、目录/链接个数
对于目录文件,表示它的第一级子目录的个数。注意此处见到的值要减2才等于该目录下的子目录的实际个数。
例如这儿的include目录下,虽然是没有子目录的,所以应当是0,并且它这儿却显示2,这是由于要加上.目录和..目录。在linux下,.目录表示当前目录,..目录表示上一级目录。
这也可以解释上图中第一行的.目录下的3和第二行..目录下的26。由于当前目录下有一个include目录,所以加上.目录和..目录这2个目录就等于3,所以第一行会显示3。而上一级目录共有24个目录,加上上一级目录的.目录和..目录这2个目录,所以这儿的第二行显示的是26。
对于其他文件红旗linux官网,表示指向它的链接文件的个数。
四、所有者及组
表示该文件的所有者/创建者(owner)及其所在的组(group)。
五、文件大小
假如是文件,则表示该文件的大小,单位为字节。
假如是目录,则表示该目录符所占的大小,并不表示该目录下所有文件的大小。
六、修改日期
该文件最后更改的日期时间。
七、文件名称
文件名,无需多说。
八、字体颜色
在大多数的linuxshell窗口中,能够用颜色来分辨不同文件的属性:
灰蓝色表示普通文件;
亮红色表示可执行文件;
亮蓝色表示压缩文件;
灰白色表示目录;
亮黄色表示链接文件;
亮蓝色表示设备文件;
其实,这儿须要使用系统缺省的配色方案。假如你自定义了shell的配色方案,则有可能与前面的定义不一致。
最后还要说明一点的是,可以看见上述的图片中,back_init文件的旁边还带了一个星号(*),这也是linux系统下用于标记可执行文件的另外一种形式。也就是说,但凡文件名前面带了一个星号(*)的,都是在说明这是一个可执行文件。