Linux 的 stat 命令

Linux 的 stat 命令是一个功能强大的文件系统状态查看工具,它可以显示文件或文件系统的详细状态信息。以下是关于 stat 命令的详细说明:

基本语法

stat [选项] 文件名/目录名

主要功能

  1. 显示文件/目录的完整元数据信息
  2. 以不同格式输出信息(自定义格式、简洁格式等)
  3. 显示文件系统状态(使用 -f 选项)

常用输出信息

  • 文件大小(字节)
  • 占用块数
  • IO 块大小
  • 文件类型
  • 设备号
  • Inode 编号
  • 硬链接数
  • 权限(八进制和符号表示)
  • UID/GID
  • 访问/修改/状态变更时间

常用选项

  • -c 或 --format:自定义输出格式
  • -f:显示文件系统状态而非文件状态
  • -t:以简洁格式显示信息
  • -L:跟随符号链接
  • -Z:显示 SELinux 安全上下文

格式说明符(与 -c 一起使用)

  • %a:八进制权限
  • %A:符号权限
  • %F:文件类型
  • %g:属组 GID
  • %G:属组名
  • %n:文件名
  • %s:文件大小(字节)
  • %u:属主 UID
  • %U:属主名
  • %x:最后访问时间
  • %y:最后修改时间
  • %z:最后状态变更时间

使用示例

  1. 查看文件完整信息:

    bash 复制代码
    stat /etc/passwd
  2. 自定义格式输出:

    bash 复制代码
    stat -c "%n 大小: %s 字节 权限: %A" /etc/passwd
  3. 查看文件系统信息:

    bash 复制代码
    stat -f /
  4. 批量查看多个文件:

    bash 复制代码
    stat *.txt

实际应用场景

  1. 脚本中获取文件属性
  2. 调试文件权限问题
  3. 检查文件时间戳
  4. 监控文件系统状态变化
  5. 验证备份文件的完整性

注意事项

  • 某些选项在不同 Linux 发行版中可能有差异
  • 对于特殊文件(设备文件、管道等)会显示相应信息
  • 无权限访问的文件会显示错误信息

stat 命令比简单的 ls -l 提供了更全面的文件系统信息,是系统管理员和开发人员进行文件系统分析和故障排查的重要工具。

相关推荐
emo_2b4 小时前
Pycharm配置conda解释器时遇到的问题及解决方法
linux·pycharm·conda
科技研学社4 小时前
中小服装工装厂自动化改造:产线节拍平衡与工位减负实施方案
运维·自动化
极光通讯4 小时前
服务器内存替代料选型方法论:主料号缺货时如何找到Pin-to-Pin兼容型号
运维·服务器
草根大哥4 小时前
08-横向扩容与突发高并发:加机器到底买到了什么
运维·webrtc·srt·横向扩容·whip·自建cdn
人生百态,人生如梦5 小时前
Ubuntu在低版本下使用ccswitch+claudecode(CCSwitch+Docker+Claude)连调教程
linux·ubuntu·docker·claudecode·ccswitch
oicola5 小时前
【运维】CI/CD是什么,合格的规范应该怎么设置
运维·ci/cd
Dachui_11225 小时前
内网穿透如何限制访问地区?ZeroNews Geo Location 区域访问控制实践
运维·网络安全·内网穿透·访问控制·远程办公·api安全·ip白名单
byte轻骑兵5 小时前
【BlueZ】hciconfig 工具:蓝牙适配器管理实操 + 源码实现基础
linux·bluez·电脑蓝牙·嵌入式蓝牙
SKH.5 小时前
Linux驱动-系统移植
linux·服务器
根目录下的猫5 小时前
虚拟机复制过来运行时:“虚拟机使用的此版本,VMware Workstation 不支持的硬件版本。”错误解决办法,亲测可用
linux·运维·服务器·后端