stat命令最直接完整,可一次性显示文件所有关键状态信息和全部时间戳,包括atime、mtime、ctime及文件大小、权限、inode号等;支持-c选项精准提取单项时间,格式为标准日期加纳秒。

用 stat 命令最直接、最完整,它能一次性显示文件的所有关键状态信息和全部时间戳。
查看完整状态:stat 命令
运行 stat 文件名,输出包含:
- Access(atime):最后一次读取或执行文件的时间
- Modify(mtime):最后一次修改文件内容的时间
- Change(ctime):最后一次变更文件元数据(权限、所有者、链接数等)的时间
- 文件大小、权限、inode 号、硬链接数、设备号、SELinux 上下文等详细属性
例如:stat /etc/hosts 会清晰列出三项时间及对应精确到纳秒的值。
快速查看某一项时间
用 stat -c 指定格式,更简洁高效:
- 只看修改时间(mtime):
stat -c %y filename - 只看访问时间(atime):
stat -c %x filename - 只看变更时间(ctime):
stat -c %z filename
输出为标准日期格式,如 2026-07-28 14:22:05.123456789 +0800。
配合 ls 命令快速识别常用时间
虽然 ls 默认只显示一个时间,但可通过选项切换:
-
ls -l filename→ 显示 mtime(默认) -
ls -lu filename→ 显示 atime -
ls -lc filename→ 显示 ctime
注意:这些命令只显示日期和小时,不带秒和纳秒;适合快速判断,不适合精确定位。
补充说明:创建时间(crtime)
Linux 内核长期未原生支持标准创建时间,部分现代文件系统(如 ext4、XFS)已实现,但需特定工具查看:
- 尝试
stat -c %w filename或%W(若返回“-”,说明该文件系统未记录或内核未暴露) - 更可靠方式是使用
debugfs(ext4)或xfs_db(XFS),但需 root 权限且操作较复杂
日常运维中,mtime 和 ctime 已覆盖绝大多数审计与排查需求。


















