stat 命令
stat
命令用于显示文件或文件系统的状态信息,stat
命令输出的信息比 ls
命令输出的信息要详尽得多。
命令用法
常用可选参数
参数 | 说明 |
-L, --dereference | 跟踪符号连接 |
-f, --file-system | 显示文件系统状态信息而不是文件的状态信息 |
-c, --format=FORMAT | 指定输出格式 FORMAT, 每个打印信息会跟随输出空行 |
-t, --terse | 以简洁的形式打印信息 |
至于上述提到的 FORMAT,根据要查看文件还是文件系统有不同的参数:
对于文件状态信息:
参数 | 说明 |
%A | 以可读形式显示访问权限 |
%b | 显示分配的块数目 |
%B | 每一个块的字节大小 |
%d | 十进制的设备编号 |
%D | 十六进制的设备编号 |
%F | 文件类型 |
%g | 文件拥有者属组 ID |
%G | 文件拥有者属组名 |
%h | 硬链接的数目 |
%i | inode 编号 |
%m | 挂载点 |
%n | 文件名 |
%N | 如果是符号链接的话,显示引用名 |
%s | 总字节数 |
%u | 拥有者的用户 ID |
%U | 拥有者的用户名 |
%w | 文件创建时间,以可读形式显示 |
%x | 最后访问时间,以可读形式显示 |
%y | 最后修改时间,以可读形式显示 |
%z | 状态最近修改时间,以可读形式显示 |
对于文件系统状态信息:
参数 | 说明 |
%a | 对非超级用户的可用空闲块 |
%b | 文件系统的总块数 |
%c | 文件系统的总文件节点数 |
%d | 文件系统的空闲文件节点数 |
%f | 文件系统的空闲块数 |
%l | 文件名的最大长度 |
%n | 文件名 |
%s | 用于快速传输的块大小 |
%S | 用于块计算的块大小 |
%T | 以可读形式显示文件系统类型 |
结果参数解析
显示文件状态信息
各参数说明如下:
File:显示文件名
Size:显示文件大小
Blocks:文件使用的数据块总数
IO Block:IO块大小
regular file:文件类型(常规文件)
Device:设备编号
Inode:Inode 号
Links:链接数
Access:文件的权限
Gid、Uid:文件所有权的 Gid 和 Uid。
注意,这里 Birth 的值为
-
,是因为在 Linux 上没有创建时间的概念。但如果文件建立后就没有修改过, 修改时间=建立时间 ;如果文件建立后,状态就没有改动过,那么 状态改动时间=建立时间 ;如果文件建立后,没有被读取过,那么 访问时间=建立时间,因为不好判断文件是否被改过、读过、其状态是否变过,所以判断文件的建立时间基本上能为不可能。
显示文件系统状态信息
其中各参数如下:
File:文件名
Namelen:文件名长度限制
Block size:块大小
Fundamental block size:基础块大小,用于快速传输
Block:块信息,包括总大小,空闲大小以及已用大小
Inodes:系统 inode 信息,包括总数和可用
Last updated