当前位置:首页>Linux>Linux基础 | stat 命令使用指南:查看文件最完整的信息

Linux基础 | stat 命令使用指南:查看文件最完整的信息

  • 2026-09-08 17:27:10
Linux基础 | stat 命令使用指南:查看文件最完整的信息
在 Linux 中查看文件信息时,很多人第一反应是使用:
ls -l
例如:
ls -l test.txt
输出:
-rw-r--r-- 1 root root 1200 Mar 10 10:00 test.txt
虽然能看到基本信息,但其实并不完整。例如:
文件最后访问时间
inode 编号
文件块大小
精确的时间戳
如果想查看更详细的文件信息,Linux 提供了一个非常强大的命令:
stat
一句话理解:stat 用于查看文件或目录的详细状态信息。
在系统运维、排查问题、分析文件变化时非常有用。

一、stat 命令基本语法

基本格式:
stat 文件名
示例:
stat s.sh
输出示例:
这些信息包含:
文件大小
inode 编号
权限
所有者
时间信息
比 ls -l 更详细。

二、查看文件大小

例如查看某个日志文件大小:
stat access.log
输出:
Size: 5242880
表示文件大小为:
5242880 bytes
这在分析日志文件增长情况时非常有用。

三、查看文件权限

stat 也会显示文件权限,例如:
Access: (0644/-rw-r--r--)
解释:
数字
权限
6
读写
4
只读
4
只读
对应:
rw-r--r--
这和 chmod 权限规则一致。

四、查看文件时间信息

stat 可以看到三个重要时间:
Access
Modify
Change
解释如下:
时间
含义
Access
最后访问时间
Modify
最后修改内容时间
Change
权限或属性改变时间
示例:
Access: 2024-03-10 09:50:01
Modify: 2024-03-10 10:00:10
Change: 2024-03-10 10:00:10
在排查问题时,这些时间非常关键。
例如:
谁修改了文件
文件什么时候被访问

五、查看 inode 编号

Linux 文件系统中,每个文件都有inode 编号。
stat 输出:
Inode: 131072
inode 的作用:
  • 标识文件
  • 记录文件属性
  • 管理文件数据块
在排查硬链接问题时经常需要查看 inode。
例如:
ls -i test.txt
也可以看到 inode 编号。

六、查看目录信息

stat 不仅可以查看文件,也可以查看目录。
示例:
stat /etc
输出示例:
File: /etc
Size: 4096
File type: directory
表示 /etc 是一个目录。
同时还能看到:
目录权限
创建时间
inode 编号

七、只查看某个字段

如果只想查看文件大小,可以使用:
stat -c %s s.sh
输出:
31
常用格式:
参数
含义
%s
文件大小
%n
文件名
%y
修改时间
示例:
stat -c "%n%s bytes" test.txt
输出:
test.txt 1200 bytes
这在脚本自动化中非常常见。

八、实际运维案例

例如查看日志文件状态:
stat /var/log/syslog
如果日志不断增长,可以确认:
文件大小
修改时间
例如:
Modify: 2024-03-10 10:20:01
说明日志还在写入。

九、stat 常见使用场景

stat 在 Linux 中常用于:
  1. 查看文件详细信息
  2. 排查文件修改时间
  3. 分析日志文件增长
  4. 查看 inode 信息
  5. 编写自动化脚本

十、小结

stat 是 Linux 中查看文件状态信息最详细的工具之一。
相比 ls -l,它可以提供:
  • 更完整的文件属性
  • 精确时间信息
  • inode 编号
  • 文件系统细节
一句话总结:stat 就像 Linux 的“文件体检报告”。
掌握这个命令后,你就能更深入地了解Linux 文件系统的工作方式。

最新文章

随机文章