linux命令—stat

命令简介

stat是Linux中用于查看文件或文件系统的详细状态信息的强大命令。它比ls -l更全面,其输出信息包括但不限于:文件大小、权限、所有者、最后访问/修改/状态变更时间、inode号、所在设备信息等。

用法

stat命令的语法格式如下

stat [选项] 文件/目录/符号链接
#选项可选

stat命令的常用选项及说明如下

-L,--dereference:支持符号连接
-f,--file-system:显示文件系统状态而非文件状态
-t,--terse:以简洁方式输出信息
-c,--format=FORMAT:自定义输出格式(支持格式符)
--help:显示指令的帮助信息
--version:显示指令的版本信息

命令案例场景

1.默认输出:查看文件完整状态(无选项)

[root@blog ~]# stat anaconda-ks.cfg文件:anaconda-ks.cfg大小:1505            块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:67478510    硬链接:1
权限:(0600/-rw-------)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:admin_home_t:s0
最近访问:2025-05-29 21:30:49.502452114 +0800
最近更改:2025-05-29 21:30:49.622455612 +0800
最近改动:2025-05-29 21:30:49.622455612 +0800
创建时间:2025-05-29 21:30:49.502452114 +0800

2.查看多个文件信息

[root@blog ~]# stat anaconda-ks.cfg /etc/yum.repos.d/redhat.repo #可以同时接受多个参数,并依次显示每个文件的信息。文件:anaconda-ks.cfg大小:1505            块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:67478510    硬链接:1
权限:(0600/-rw-------)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:admin_home_t:s0
最近访问:2025-05-29 21:30:49.502452114 +0800
最近更改:2025-05-29 21:30:49.622455612 +0800
最近改动:2025-05-29 21:30:49.622455612 +0800
创建时间:2025-05-29 21:30:49.502452114 +0800文件:/etc/yum.repos.d/redhat.repo大小:358             块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:69108248    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:system_conf_t:s0
最近访问:2025-05-30 11:50:13.236899775 +0800
最近更改:2025-05-30 11:50:13.235899733 +0800
最近改动:2025-05-30 11:50:13.235899733 +0800
创建时间:2025-05-30 11:50:13.235899733 +0800

3.查看文件系统状态(而非单个文件)

[root@blog ~]# stat -f /home #使用-f选项来显示文件所在文件系统的状态,而不是文件本身的状态。文件:"/home"ID:fd0000000000 文件名长度:255     类型:xfs
块大小:4096       基本块大小:4096块:总计:10469376   空闲:9259897    可用:9259897
Inodes: 总计:20971520   空闲:20838518
#输出将包含文件系统的信息,如类型(Type)、块大小(Block size)、总块数(Total blocks)、空闲块数(Free blocks)等。这对于快速检查磁盘使用情况很有用。

4.简洁输出

[root@blog ~]# stat -t anaconda-ks.cfg
anaconda-ks.cfg 1505 8 8180 0 0 fd00 67478510 1 0 0 1748525449 1748525449 1748525449 1748525449 4096 system_u:object_r:admin_home_t:s0
#按固定顺序输出字段,便于脚本解析

5.自定义格式输出

使用--printf或-c选项可以自定义输出的格式和内容。
格式符示例:%n: 文件名%s: 文件大小(字节)%U: 所有者用户名%G: 所属组名%i: inode 编号%A: 权限(符号格式,如 -rw-r--r--%a: 权限(八进制数字格式,如 644)%x,%y,%z,%w: 分别表示访问时间(atime),修改时间(mtime),状态变更时间(ctime),创建时间 (btime)%F: 文件类型(如 “普通文件(regular file), “目录(directory)”)应用案例:
#1)只显示文件名和大小:
[root@blog ~]# stat -c "File: %n Size: %s bytes" anaconda-ks.cfg
File: anaconda-ks.cfg Size: 1505 bytes#2)只显示inode编号(常用于调试硬链接):
[root@blog ~]# stat -c %i  anaconda-ks.cfg
67478510#3)以更易读的格式显示修改时间:
[root@blog ~]# stat -c "这个文件最后修改时间是:%y" anaconda-ks.cfg
这个文件最后修改时间是:2025-05-29 21:30:49.622455612 +0800#4)批量查看多个文件的权限和所有者:
[root@blog ~]# stat -c "%A %U %G %n" *.cfg #这条命令会列出当前目录下所有.cfg文件的权限、所有者、所属组和文件名
-rw------- root root anaconda-ks.cfg

6.跟踪符号链接(默认解引用)

默认情况下,stat会跟踪符号链接并显示其指向的目标文件的信息。
[root@blog ~]# stat /var/mail文件:/var/mail -> spool/mail大小:10              块:0          IO 块:4096   符号链接
设备:fd00h/64768d      Inode:101618387   硬链接:1
权限:(0777/lrwxrwxrwx)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:mail_spool_t:s0
最近访问:2025-09-12 09:34:28.921770355 +0800
最近更改:2024-06-25 22:28:11.000000000 +0800
最近改动:2025-05-29 21:25:12.135806195 +0800
创建时间:2025-05-29 21:25:12.128806007 +0800如果想要查看符号链接本身的信息(如大小、时间戳),而不是它指向的目标,需要使用-L或--dereference选项来禁用跟踪。
[root@blog ~]# stat -L /var/mail文件:/var/mail大小:18              块:0          IO 块:4096   目录
设备:fd00h/64768d      Inode:33896061    硬链接:2
权限:(0775/drwxrwxr-x)  Uid:(    0/    root)   Gid:(   12/    mail)
环境:system_u:object_r:mail_spool_t:s0
最近访问:2025-05-29 21:30:51.521510955 +0800
最近更改:2025-05-29 21:30:18.434546704 +0800
最近改动:2025-05-29 21:30:18.434546704 +0800
创建时间:2025-05-29 21:25:12.129806033 +0800

注意事项

  1. 善用Tab键补全: 输入路径时,按Tab键可以让系统自动补全目录名或文件名,避免拼写错误并提高效率
  2. 通过man stat查看完整手册

阅读原文

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/96728.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/96728.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决串口数据乱序问题

环境:jetson nano ubuntu 20.04python 3.12终于是找到解决串口乱序的最佳解决办法了,先来看看什么是串口乱序:这就是一个典型的串口乱序,我的发送端发送 的协议为0x55 0x51 ...0x55 0x52 ...0x55 0x53 ...0x55 0x54 ...在这四条协…

Spring的注解

声明Bean的注解 Component Controller Service Repository 后三种为Component的别名,之所以不同是因为可读性的考虑 Target({ElementType.TYPE}) Retention(RetentionPolicy.RUNTIME) Documented Component public interface Controller {AliasFor(//别名an…

UVM寄存器模型与通道机制

接续UVM基础入门文章。前言重点讲述UVM常用的接口连接方式。寄存器模型:UVM寄存器模型(Register Model)是一组高级抽象的类,用于对DUT(Design Under Test)中具有地址映射的寄存器和存储器进行建模&#xff…

12.NModbus4在C#上的部署与使用 C#例子 WPF例子

一、Modbus TCP/IP是什么Modbus TCP/IP是一种基于TCP/IP协议的工业自动化通信协议。它在Modbus协议的基础上,利用TCP/IP网络进行数据传输,使得工业设备之间的通信更加便捷和高效。常用的Modbus功能码包括0x03(读保持寄存器)、0x06…

硬件开发2-汇编1(ARMv7-A)- 基本概要

一、汇编基本概要1、ARM数据和指令类型2、ARM字节顺序即可大端存储也可小端存储,默认小端存储(不建议修改)、kernel(内核)中的,CPSR(当前程序状态寄存器)可修改大小端存储3、ARM处理…

Linux中进程和线程常用的API详解

进程与线程基础及 Linux 进程间通信(IPC)详解 一、程序与进程 1. 程序(静态文件) 程序是存储在磁盘上的可执行文件,是静态实体,不占用 CPU、内存等运行时资源,仅占用磁盘空间。不同操作系统的可…

VS Code 插件开发教程

VS Code 插件开发教程 概述 Visual Studio Code(简称 VS Code)是一款由 Microsoft 开发的开源轻量级编辑器,支持跨平台(Windows、macOS、Linux)。 其最大的优势之一是强大的插件系统,开发者可以通过编写扩…

Docker技术解析

1.Docker安装 1.如果Ubuntu自带的Docker版本太低,我们需要卸载旧版本并安装新的 sudo apt-get remove docker docker-engine docker.io containerd runc2. 备份原有软件源 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak3.选择合适的镜像源 # 或者使用…

TCP套接字的使用

Java中使⽤TCP协议通信,使用ServerSocket来建立链接,使用Socket进行通信.ServerSocketServerSocket是创建TCP服务端Socket的api,主要方法:方法签名说明ServerSocket(int port)创建一个服务端流套接字Socket,并绑定指定端口Socket accpet()开始监听指定端口,有客户端链接后,返回…

linux执行systemctl enable xxxxx 报 Failed to execute operation: Bad message

linux执行systemctl enable redis.service 报 Failed to execute operation: Bad message 如果在执行 systemctl enable 命令时遇到 "Failed to execute operation: Bad message" 错误,可能是由于以下几个原因导致的。你可以按照以下步骤进行排查和解决&a…

终端之外:解锁Linux命令行的魔法与力量

Linux命令行的核心理念 在记忆具体的指令之前,先理解它的哲学: 一切皆文件 :硬件设施,进程,目录…在Linux中几乎所有资源都被抽象为文件,这意味着你可以通过同样的指令(如 ench ,cat&#xff…

CSS 动画实战:实现电商中“加入购物车”的抛物线效果

引言 在电商网站中,“加入购物车”动画 是提升用户体验的经典交互之一。一个小小的商品图标从页面飘向购物车,不仅直观地反馈了操作结果,还能增加趣味性与沉浸感。 实现这一效果的方式有很多,比如 JavaScript 计算路径 动画&…

深度学习之损失函数

深度神经网络由多层网络连接而成,网络连接处防止线性直接相关,采用非线性函数进行逐层隔离,真正实现每层参数的独立性,也就是只对本层提取到的特征紧密相关。因为如果是线性函数直接相连就成了一层中间网络了,只不过参…

Oracle OCP认证考试题目详解082系列第32题

考察知识点:Oracle profiles(配置文件) 英语题目 32.Which are two of the account management capabilities that can be configured using Oracle profiles? A.the number of days for which an account may be logged in to one or more sessions before it is locked…

Docker 部署 MongoDB:单节点与副本集的最佳实践

Docker 部署 MongoDB:单节点与复制集的企业级最佳实践引言:容器化有状态服务的范式转变第一部分:基础概念与生产环境考量1.1 核心 Docker 概念深度解析1.2 Volume vs. Bind Mount:生产环境抉择1.3 获取与验证官方镜像官方镜像默认…

公司本地服务器上搭建部署的办公系统web项目网站,怎么让外网访问?有无公网IP下的2种通用方法教程

本地物理服务器计算机搭建部署应用包括网站等,然后在局域网内的访问外,还需要提供外地的连接访问,这是比较常见的跨网通信需求。如在家或在外访问公司内部办公系统网站,这就涉及内网IP和公网IP的转换,或域名的解析使用…

整体设计 之 绪 思维导图引擎 之 引 认知系统 之 引 认知系统 之 序 认知元架构 之6 拼句 之1 (豆包助手 之8)

摘要(AI生成)认知演进 中 交流句子所包含的 信息描述框架 < i , j > ( m , n )本体论基础&#xff08;数学约束&#xff09;&#xff1a; n n元&#xff08;维度&#xff09;n次&#xff08;层次&#xff09;n个&#xff08;方程&#xff09;n场&#xff08;场景&am…

微软的两个调试器debugpy和python

在生成launch.json文件时&#xff0c;新版本的python扩展解释器类型是debugpy&#xff0c;而不是就版本的type:python&#xff0c;那么两者的区别在哪&#xff1f;1. 历史演变背景&#xff08;1&#xff09;旧版&#xff08;Python扩展 < 2021.09&#xff09;使用 "typ…

【连载2】C# MVC 自定义错误页设计:404/500 处理与 SEO 优化

在开发ASP.NET MVC 应用时&#xff0c;自定义错误页是提升用户体验和 SEO 表现的重要环节。默认的错误页不仅不美观&#xff0c;还可能泄露技术细节&#xff0c;影响用户体验和搜索引擎排名。 实现自定义错误页的完整代码 配置 Web.config 自定义错误页 在 ASP.NET 中&#…

mcp解读——概述及整体架构

概念介绍 什么是模型上下文协议 &#xff08;MCP&#xff09; MCP&#xff08;模型上下文协议&#xff09;是一种用于将 AI 应用程序连接到外部系统的开源标准。 使用 MCP&#xff0c;Claude 或 ChatGPT 等人工智能应用程序可以连接到数据源&#xff08;例如本地文件、数据库&a…