Linux基础命令-stat显示文件的状态信息
文章目录
stat
命令介绍
语法格式
基本参数
测试三个时间的变化过程
1)使用cat命令
2)使用echo命令
3)使用chmod命令
4)使用vim命令
参考实例
1)显示文件的状态信息
2)以简洁的形式显示状态信息
3)显示文件的文件系统信息
4)以指定样式显示文件的各个信息
5)显示命令的帮助信息
命令总结
stat
命令介绍
先到帮助文档中了解命令的含义
NAME
stat - display file or file system status
stat(status)命令主要功能是显示文件或文件系统的状态信息,显示了文件大小,权限信息,硬链接,软连接,inode号,SELinux上下文,以及三个时间信息。还可通过这三个时间来查看文件有没有被修改过文件内容。
三个时间分别是:
- ATIME:文件最后访问时间
- MTIME:文件最后修改时间
- CTIME:文件最后改动时间
语法格式
stat的语法格式:stat 【参数】文件
SYNOPSIS
stat [OPTION]... FILE...
下面来看下命令的参数有哪些。
基本参数
命令的基本参数有以下信息,表格形式呈现
| -L | 支持显示符号链接的文件 |
| -f | 显示文件系统的信息 |
| -t | 显示简洁的信息 |
| --help | 显示帮助信息 |
| -c <format> | 显示指定的样式 |
-c参数指定的样式有:
- %a :显示文件的八进制权限
- %A :显示以人类可读的权限形式(rwx)
- %b :显示已分配的块数(block)
- %B :显示每个扇区的大小
- %C :显示安全上下文信息
- %d :显示文件在磁盘中的十进制设备编号
- %D :显示文件在磁盘中的十六进制设备编号
- %f :显示文件十六进制原始模式
- %F :显示文件类型
- %g :显示用户的GID
- %G :显示用户的属组(组名称)
- %h : 显示文件的硬链接数量
- %i : 显示文件的inode值
- %m :显示文件所在的挂载点
- %n : 显示文件名
- %N :显示文件是否是链接文件,是则显示源文件
- %o :显示I/O的传输大小
- %s :显示文件的总大小,以字节bit为单位
- %t :显示以十六进制表示的主要设备类型,用于字符和块设备的文件
- %T :显示以十六进制表示的次要设备类型,用于字符和块设备的文件
- %u :显示用户的UID
- %U :显示用户的属主(用户名称)
- %w :以人类可读显示文件诞生的时间,-表示未知
- %W :显示文件诞生的时间,从纪元开始的秒数,若为0表示未知
- %x :显示文件最后的访问时间
- %X : 显示从1970年1月1日到最后访问的秒数
- %y : 显示文件最后的修改时间
- %Y : 显示从1970年1月1日到最后修改的秒数
- %z :显示文件最后的改动时间
- %Z : 显示从1970年1月1日到最后改动的秒数
测试三个时间的变化过程
首先先创建一个文件出来,使用stat查看文件三个时间

可以看到文件一创建出来三个时间是显示一致的,那么我们就做下测试,看使用什么命令会修改对应的时间。
1)使用cat命令
使用cat命令会修改文件的访问时间,看看会发生什么变化
只有访问时间发生了变化
[root@localhost ~]# cat a.txt
[root@localhost ~]# stat -c %x a.txt
2023-02-27 11:09:44.616235228 +0800
2)使用echo命令
使用echo命令往文件中写入内容
访问时间没有变化,而更改时间和改动时间有变化。
[root@localhost ~]# echo "123456" > a.txt
[root@localhost ~]# stat a.txt 文件:"a.txt"大小:7 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:67259305 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2023-02-27 11:09:44.616235228 +0800
最近更改:2023-02-27 11:13:13.167684191 +0800
最近改动:2023-02-27 11:13:13.167684191 +0800
创建时间:-
3)使用chmod命令
使用chmod改变文件权限
改动时间发生了变化,其他的还是之前显示的时间
[root@localhost ~]# chmod 777 a.txt
[root@localhost ~]# stat a.txt 文件:"a.txt"大小:7 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:67259305 硬链接:1
权限:(0777/-rwxrwxrwx) Uid:( 0/ root) Gid:( 0/ root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2023-02-27 11:09:44.616235228 +0800
最近更改:2023-02-27 11:13:13.167684191 +0800
最近改动:2023-02-27 11:15:42.960443170 +0800
4)使用vim命令
使用vim后,若最后是使用:wq(保存退出)的方式,则三个时间都会修改,当然进入文件只是阅读一下,退出时只使用:q(退出),文件只会修改访问时间。
[root@localhost ~]# vim a.txt
[root@localhost ~]# stat a.txt 文件:"a.txt"大小:11 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:67259305 硬链接:1
权限:(0777/-rwxrwxrwx) Uid:( 0/ root) Gid:( 0/ root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2023-02-27 11:18:04.376103776 +0800
最近更改:2023-02-27 11:19:00.856767012 +0800
最近改动:2023-02-27 11:19:00.856767012 +0800
创建时间:-[root@localhost ~]# vim a.txt
[root@localhost ~]# stat a.txt 文件:"a.txt"大小:11 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:67259305 硬链接:1
权限:(0777/-rwxrwxrwx) Uid:( 0/ root) Gid:( 0/ root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2023-02-27 11:21:21.261415749 +0800
最近更改:2023-02-27 11:19:00.856767012 +0800
最近改动:2023-02-27 11:19:00.856767012 +0800
创建时间:-
参考实例
1)显示文件的状态信息
显示文件的信息,可以看到有以下的一些信息内容。
[root@localhost ~]# stat anaconda-ks.cfg 文件:"anaconda-ks.cfg"大小:1365 块:8 IO 块:4096 普通文件
设备:fd00h/64768d Inode:67144899 硬链接:1
权限:(0600/-rw-------) Uid:( 0/ root) Gid:( 0/ root)
环境:system_u:object_r:admin_home_t:s0
最近访问:2023-02-08 00:02:25.953010917 +0800
最近更改:2023-02-08 00:02:25.954010917 +0800
最近改动:2023-02-08 00:02:25.954010917 +0800
创建时间:-
2)以简洁的形式显示状态信息
虽然说是简洁了许多,不过看起来并不是很清晰每个数值含义。
[root@localhost ~]# stat -t anaconda-ks.cfg
anaconda-ks.cfg 1365 8 8180 0 0 fd00 67144899 1 0 0 1675785745 1675785745 1675785745 0 4096 system_u:object_r:admin_home_t:s0
3)显示文件的文件系统信息
[root@localhost ~]# stat -f anaconda-ks.cfg 文件:"anaconda-ks.cfg"ID:fd0000000000 文件名长度:255 类型:xfs
块大小:4096 基本块大小:4096块:总计:9201265 空闲:8092007 可用:8092007
Inodes: 总计:18411520 空闲:18277918
4)以指定样式显示文件的各个信息
这里列举几个比较常用到的样式,因为实在太多了,当然也可以自己尝试去显示每个样式显示的内容是什么。
[root@localhost ~]# stat -c %a 1.txt
644
[root@localhost ~]# stat -c %A 1.txt
-rw-r--r--
[root@localhost ~]# stat -c %B 1.txt
512
[root@localhost ~]# stat -c %b 1.txt
8
[root@localhost ~]# stat -c %x 1.txt
2023-02-27 09:12:37.948477716 +0800
[root@localhost ~]# stat -c %y 1.txt
2023-02-27 09:12:54.618199506 +0800
[root@localhost ~]# stat -c %z 1.txt
2023-02-27 09:12:54.618199506 +0800
5)显示命令的帮助信息
[root@localhost ~]# stat --help
用法:stat [选项]... 文件...
Display file or file system status.Mandatory arguments to long options are mandatory for short options too.-L, --dereference follow links
命令总结
stat命令使用起来还是比较容易,一般直接使用命令加文件即可显示文件的状态信息了,若觉得以上内容还行的,可以点赞支持一下!

相关文章:
Linux基础命令-stat显示文件的状态信息
文章目录 stat 命令介绍 语法格式 基本参数 测试三个时间的变化过程 1)使用cat命令 2)使用echo命令 3)使用chmod命令 4)使用vim命令 参考实例 1)显示文件的状态信息 2)以简洁的形式显示状态信…...
SQL入门DEMO
单表查询 ● --查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、客户ID和雇员ID等字段的值 ● --查询供应商的ID、公司名称、地区、城市和电话字段的值。条件是“地区等于华北”并且“联系人头衔等于销售代表”。 –查询供应商的ID、公司名称、地…...
辉光管时钟学习制作及开源软硬件工程
文章目录前言开源地址辉光管项目介绍辉光管的工作条件硬件部分部分介绍充电电路驱动电路不足之处软件部分总结前言 作为一个电子人,一直想做一个辉光管时钟,算是大学的一个心愿,终于在快要毕业前做了一个,下面把软件和硬件的部分…...
动手学深度学习(第二版)学习笔记 第三章
第三章 线性神经网络 代码:d2l-zh/pytorch/chapter_linear-networks 3.1 线性回归 3.1. 线性回归 — 动手学深度学习 2.0.0 documentation 解析解 线性回归的解可以用一个公式简单地表达出来,这类解叫作解析解(analytical solution&…...
冯诺依曼体系结构与操作系统的概念及理解
一、 冯诺依曼体系结构1、概念2、内存的作用3、硬件原理解释软件行为二、操作系统的概念及基本作用1、概念2、设计操作系统的目的3、操作系统的主要作用4、什么是管理5、管理的目的6、操作系统如何为我们服务一、 冯诺依曼体系结构 我们常见的计算机,如笔记本。我们…...
【深度探讨】如何利用区块链改善公共服务
发表时间:2022年5月4日 信息来源:bsvblockchain.org BSV区块链协会全力支持符合企业和政府对于节能降耗和合法合规等相关要求的区块链生态系统。 然而,虽然监管机构负责其监管范围内的技术服务的性质、目的和影响,但他们并不是全…...
【打卡】图分析与节点嵌入
背景介绍 图(Graphs)是一种对物体(objects)和他们之间的关系(relationships)建模的数据结构,物体以结点(nodes)表示,关系以边(edges)…...
python元编程详解
什么是元编程 软件开发中很重要的一条原则就是“不要重复自己的工作(Don’t repeat youself)”,也就是说当我们需要复制粘贴代码时候,通常都需要寻找一个更加优雅的解决方案,在python中,这类问题常常会归类…...
为什么文档对 SaaS 公司至关重要?
在过去十年左右的时间里,SaaS的兴起使全球数百家公司成为家喻户晓的公司。但他们并不是仅仅依靠产品的力量到达那里的。客户服务和支持是使一切在幕后顺利进行的原因——其中很大一部分是文档。以正确的风格和正确的位置在您的网站上找到适当的用户文档对于将浏览器…...
Echarts 实现电池效果的柱状图
第022个点击查看专栏目录本示例是解决显示电池电量状态的柱状图,具体的核心代码请参考源代码。 文章目录示例效果示例源代码(共102行)相关资料参考专栏介绍示例效果 示例源代码(共102行) /* * Author: 还是大剑师兰特…...
计算机网络高频知识点(一)
目录 一、http状态码 二、浏览器怎么数据缓存 三、强缓存与协商缓存 1、强缓存 2、协商缓存 四、简单请求与复杂请求 五、PUT 请求类型 六、GET请求类型 七、GET 和 POST 的区别 八、跨域 1、什么时候会跨域 2、解决方式 九、计算机网络的七层协议与五层协议分别指…...
JavaScript split()方法
JavaScript split()方法 目录JavaScript split()方法一、定义和用法二、语法三、参数值四、返回值五、更多实例5.1 省略分割参数5.2 使用limit参数5.3 使用一个字符作为分割符一、定义和用法 split() 方法用于把一个字符串分割成字符串数组。 二、语法 string.split(separat…...
前端面试题 —— 性能优化
目录 一、CDN的作用 二、CDN的使用场景 三、懒加载的概念 四、懒加载与预加载的区别 五、documentFragment 是什么?用它跟直接操作 DOM 的区别是什么? 六、常见的图片格式及使用场景 七、懒加载的特点 八、如何优化动画? 九、如何提⾼…...
我的周刊(第080期)
我的信息周刊,记录这周我看到的有价值的信息,主要针对计算机领域,内容主题极大程度被我个人喜好主导。这个项目核心目的在于记录让自己有印象的信息做一个留存以及共享。🎯 项目stable-diffusion-webui-docker[1]基于 Docker 的一…...
操作系统——7.进程的定义,组成,组成方式和特征
目录 1.概述 编辑2.定义 2.1单道程序 2.2多道程序 2.3进程定义 3.进程的组成 3.1进程的组成内容 3.2 PCB中的内容 4.进程的组织 4.1进程的两种组织方式 4.2链接方式 4.3索引方式 5.进程的特征 6.小结 这篇文章,我们主要来学习一下进程的定义࿰…...
CRI-O, Containerd, Docker, Postman等概念介绍
参考:Docker,containerd,CRI,CRI-O,OCI,runc 分不清?看这一篇就够了Docker, containerd, CRI-O and runc之间的区别? Docker、Podman、Containerd 谁才是真正王者?CRI-O …...
【原创】java+swing+mysql设备预约管理系统设计与实现
我们在办公室或者学校实验室的,经常需要使用一些设备,因此需要提前租借。今天我们主要介绍如何使用javaswing和mysql数据库去完成一个设备预约管理系统,方便用户进行设备管理和预约。 功能分析: 设备预约管理系统主要是为了方便…...
7、kubernetes(k8s)Dashboard 安装
本文内容以语雀为准 说明 Kubernetes Dashboard 是一个通用的、基于Web的UI,用于Kubernetes集群管理。 它允许用户管理群集中运行的应用程序并对其进行故障排除,以及管理群集本身。 不同 Kubernetes Dashboard 支持的 Kubernetes 版本不同,…...
数学小课堂:虚数的媒介工具作用(虚构一个现实中不存在的概念,来解决现实问题)
文章目录 引言I 预备知识1.1 平方根1.2 三次方程1.3 极坐标II 虚数2.1 虚数的来源2.2 理解虚数存在的必要性2.3 虚数的影响III 复数3.1 人类认知升级的过程3.2 数字的扩展历史3.3 复数的用途引言 虚数的来源和存在的必要性:三次方程是一定有实数解的,因此根号里面负数的问题…...
3.抽象工厂模式(Abstract Factory)
与工厂模式对比 工厂模式 工厂模式是类创建模式。在工厂模式中,只需要生产同一种产品,只不过是生产厂家不同。 所以产品类的设计: 抽象的产品类Product具体的产品类Product_A,Product_B, Product_C, Product_D…… 工厂的设计…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
高考志愿填报管理系统---开发介绍
高考志愿填报管理系统是一款专为教育机构、学校和教师设计的学生信息管理和志愿填报辅助平台。系统基于Django框架开发,采用现代化的Web技术,为教育工作者提供高效、安全、便捷的学生管理解决方案。 ## 📋 系统概述 ### 🎯 系统定…...
《信号与系统》第 6 章 信号与系统的时域和频域特性
目录 6.0 引言 6.1 傅里叶变换的模和相位表示 6.2 线性时不变系统频率响应的模和相位表示 6.2.1 线性与非线性相位 6.2.2 群时延 6.2.3 对数模和相位图 6.3 理想频率选择性滤波器的时域特性 6.4 非理想滤波器的时域和频域特性讨论 6.5 一阶与二阶连续时间系统 6.5.1 …...
