Linux命令之stat命令

一、stat命令简介

  stat命令用于显示文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。stat命令可以查看的信息包括:

  • File:显示文件名
  • Size:显示文件大小
  • Blocks:文件使用的数据块总数
  • IO Block:IO块大小
  • regular file:文件类型(常规文件)
  • Device:设备编号
  • Inode:Inode号
  • Links:链接数
  • Access:文件的权限
  • Gid、Uid:文件所有权的Gid和Uid
  • access time:表示我们最后一次访问(仅仅是访问,没有改动)文件的时间
  • modify time:表示我们最后一次修改文件的时间
  • change time:表示我们最后一次对文件属性改变的时间,包括权限,大小,属性等等
  • Birth time : 文件创建时间,crtime,不过据查此属性linux已废弃,目前状态显示结果均为-

二、使用示例

1、获取命令帮助

[root@s145]~# stat --help

2、查看命令版本

[root@s145]~# stat --version
stat (GNU coreutils) 8.22
Copyright © 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Michael Meskes.

3、查看文件状态信息

[root@s145]~# stat test.sh
File: ‘test.sh’
Size: 72 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 101932951 Links: 1
Access: (0744/-rwxr–r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2022-01-12 15:43:11.851607487 +0800
Modify: 2020-01-12 15:43:02.520972106 +0800
Change: 2022-01-12 15:43:02.520650817 +0800
Birth: -

4、-f查看文件所在文件系统状态信息

[root@s145]~# stat -f test.sh
File: “test.sh”
ID: fd0000000000 Namelen: 255 Type: xfs
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 9703804 Free: 8676628 Available: 8676628
Inodes: Total: 19417088 Free: 19372526

5、-t以简洁形式输出文件信息

#简洁形式主要是把每个值的列头去掉了,只显示值,三个时间按照纪元至今秒数显示。
[root@s145]~# stat -t test.sh
test.sh 72 8 81e4 0 0 fd00 101932951 1 0 0 1641973391 1578814982 1641973382 0 4096 unconfined_u:object_r:admin_home_t:s

6、-L显示软连接原始文件状态信息

在这里插入图片描述

7、获取文件inode

[root@s145]~# stat -c %i test.sh
101932951

8、获取文件所属用户或者用户ID

[root@s145]~# stat -c %u test.sh
1000
[root@s145]~# stat -c %U test.sh
wuhs

9、获取文件所属用户组或者用户组ID

[root@s145]~# stat -c %G test.sh
wuhs
[root@s145]~# stat -c %g test.sh
1000

10、获取文件磁盘挂载点

[root@s145]~# stat -c %m test.sh
/
[root@s145]~# stat -c %m /home/wuhs
/home

11、获取文件访问时间

[root@s145]~# stat -c %x test.sh
2022-01-12 15:43:11.851607487 +0800

12、获取文件修改时间

[root@s145]~# stat -c %y test.sh
2020-01-12 15:43:02.520972106 +0800

13、获取文件更改时间

[root@s145]~# stat -c %z test.sh
2022-01-12 16:02:18.374012017 +0800

14、获取文件权限

[root@s145]~# stat -c %A test.sh
-rwxr–r--
[root@s145]~# stat -c %a test.sh
744

15、时间更新演示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、使用语法及参数说明

1、使用语法

用法:stat [OPTION]… FILE…

2、参数说明

参数参数说明
-L支持符号连接;
-f显示文件系统状态而非文件状态;
-c按照指定格式输出;
-t以简洁方式输出信息;
–help显示指令的帮助信息;
–version显示指令的版本信息。

3、文件的有效格式序列

格式符格式符说明
%a八进制中的访问权限
%A人类可读形式的访问权
%b分配的块数(请参阅%B)
%B%b报告的每个块的大小(字节)
%CSELinux安全上下文字符串
%d十进制设备编号
%D十六进制的设备编号
%f十六进制原始模式
%F文件类型
%g所有者的组ID
%G所有者的组名称
%h硬链接数
%iinode数
%m挂载点
%n文件名
%N带取消引用(如果是符号链接)的带引号的文件名
%o最佳I/O传输大小提示
%s总大小,以字节为单位
%t主要设备类型(十六进制),用于字符/块设备特殊文件
%T次要设备类型(十六进制),用于字符/块设备特殊文件
%u所有者的用户ID
%U所有者的用户名
%w文件出生时间,人类可读;-如果未知
%W文件生成时间,自纪元起的秒数;如果未知,则为0
%x最后一次访问的时间,人类可读
%X上次访问的时间,自纪元起的秒数
%y上次修改的时间,人类可读
%Y上次修改的时间,自纪元起的秒数
%z最后更改的时间,人类可读
%Z上次更改的时间,自新纪元起的秒数

4、文件系统的有效格式序列

格式符格式符说明
%a非超级用户可用的空闲块
%b文件系统中的数据块总数
%c文件系统中的文件节点总数
%d文件系统中的空闲文件节点
%f文件系统中的空闲块
%i十六进制文件系统ID
%l文件名的最大长度
%n文件名
%s块大小(用于更快的传输)
%S基本块大小(用于块计数)
%t十六进制文件系统类型
%T人类可读形式的文件系统类型
  • 22
    点赞
  • 134
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

恒悦sunsite

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值