1、命令概述
stat命令用于显示文件或文件系统的详细信息。stat命令的输出信息比ls命令的输出信息要更详细。
2、命令语法
stat 【选项】 【文件】
3、命令选项
-L:支持符号连接;
-f:显示文件系统状态而非文件状态;
-t:以简洁方式输出信息;
4、命令示例
4.1 查看文件a.txt详细信息
1 [root@localhost ~]# stat a.txt 2 File: ‘a.txt’ 3 Size: 5 Blocks: 8 IO Block: 4096 regular file 4 Device: 805h/2053d Inode: 201619952 Links: 1 5 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) 6 Context: unconfined_u:object_r:admin_home_t:s0 7 Access: 2019-10-16 11:24:54.530325027 +0800 8 Modify: 2019-10-16 11:24:51.721318638 +0800 9 Change: 2019-10-16 11:24:51.721318638 +0800 10 Birth: - 11 [root@localhost ~]#
-File:显示文件名
-Size:显示文件大小
-Blocks:文件使用的数据块总数
-IO Block:IO块大小
-special file:文件类型(常规文件)
-Device:设备编号
-Inode:Inode号
-Links:链接数
Device type:设备类型
-Access:文件的权限
-Gid、Uid:文件所有权的Gid和Uid。
Context:环境
Linux下的三个时间:
Access Time:简写为atime,表示文件的访问时间。当文件内容被访问时,更新这个时间
Modify Time:简写为mtime,表示文件内容的修改时间,当文件的数据内容被修改时,更新这个时间。
Change Time:简写为ctime,表示文件的状态时间,当文件的状态被修改时,更新这个时间,例如文件的链接数,大小,权限,Blocks数。
注:文件的三个时间最初是一样的。
关于三个时间的几点说明:
1、当读取文件时,Access改变,而Modify、Change不会改变
2、当修改文件时,Access、Modify、Change都会跟着改变
3、当修改属性时,Change改变,Access、Modify不会改变
4、more、less、cat、nl、tail、tac等命令会改变Access
5、ls、stat命令不会修改文件的Access
6、修改时间,修改时间是文件内容最后异常被修改时间,例:vi后保存文件
7、状态时间,状态时间是该文件的i节点最后异常被修改的时间
8、通过chmod、chown修改文件属性,会更新Change,touch则会更改Access、Modify、Change