当前位置: 首页 > news >正文

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&#xff09;使用cat命令 2&#xff09;使用echo命令 3&#xff09;使用chmod命令 4&#xff09;使用vim命令 参考实例 1&#xff09;显示文件的状态信息 2&#xff09;以简洁的形式显示状态信…...

SQL入门DEMO

单表查询 ● --查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、客户ID和雇员ID等字段的值 ● --查询供应商的ID、公司名称、地区、城市和电话字段的值。条件是“地区等于华北”并且“联系人头衔等于销售代表”。 –查询供应商的ID、公司名称、地…...

辉光管时钟学习制作及开源软硬件工程

文章目录前言开源地址辉光管项目介绍辉光管的工作条件硬件部分部分介绍充电电路驱动电路不足之处软件部分总结前言 作为一个电子人&#xff0c;一直想做一个辉光管时钟&#xff0c;算是大学的一个心愿&#xff0c;终于在快要毕业前做了一个&#xff0c;下面把软件和硬件的部分…...

动手学深度学习(第二版)学习笔记 第三章

第三章 线性神经网络 代码&#xff1a;d2l-zh/pytorch/chapter_linear-networks 3.1 线性回归 3.1. 线性回归 — 动手学深度学习 2.0.0 documentation 解析解 线性回归的解可以用一个公式简单地表达出来&#xff0c;这类解叫作解析解&#xff08;analytical solution&…...

冯诺依曼体系结构与操作系统的概念及理解

一、 冯诺依曼体系结构1、概念2、内存的作用3、硬件原理解释软件行为二、操作系统的概念及基本作用1、概念2、设计操作系统的目的3、操作系统的主要作用4、什么是管理5、管理的目的6、操作系统如何为我们服务一、 冯诺依曼体系结构 我们常见的计算机&#xff0c;如笔记本。我们…...

【深度探讨】如何利用区块链改善公共服务

发表时间&#xff1a;2022年5月4日 信息来源&#xff1a;bsvblockchain.org BSV区块链协会全力支持符合企业和政府对于节能降耗和合法合规等相关要求的区块链生态系统。 然而&#xff0c;虽然监管机构负责其监管范围内的技术服务的性质、目的和影响&#xff0c;但他们并不是全…...

【打卡】图分析与节点嵌入

背景介绍 图&#xff08;Graphs&#xff09;是一种对物体&#xff08;objects&#xff09;和他们之间的关系&#xff08;relationships&#xff09;建模的数据结构&#xff0c;物体以结点&#xff08;nodes&#xff09;表示&#xff0c;关系以边&#xff08;edges&#xff09;…...

python元编程详解

什么是元编程 软件开发中很重要的一条原则就是“不要重复自己的工作&#xff08;Don’t repeat youself&#xff09;”&#xff0c;也就是说当我们需要复制粘贴代码时候&#xff0c;通常都需要寻找一个更加优雅的解决方案&#xff0c;在python中&#xff0c;这类问题常常会归类…...

为什么文档对 SaaS 公司至关重要?

在过去十年左右的时间里&#xff0c;SaaS的兴起使全球数百家公司成为家喻户晓的公司。但他们并不是仅仅依靠产品的力量到达那里的。客户服务和支持是使一切在幕后顺利进行的原因——其中很大一部分是文档。以正确的风格和正确的位置在您的网站上找到适当的用户文档对于将浏览器…...

Echarts 实现电池效果的柱状图

第022个点击查看专栏目录本示例是解决显示电池电量状态的柱状图&#xff0c;具体的核心代码请参考源代码。 文章目录示例效果示例源代码&#xff08;共102行&#xff09;相关资料参考专栏介绍示例效果 示例源代码&#xff08;共102行&#xff09; /* * 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 是什么&#xff1f;用它跟直接操作 DOM 的区别是什么&#xff1f; 六、常见的图片格式及使用场景 七、懒加载的特点 八、如何优化动画&#xff1f; 九、如何提⾼…...

我的周刊(第080期)

我的信息周刊&#xff0c;记录这周我看到的有价值的信息&#xff0c;主要针对计算机领域&#xff0c;内容主题极大程度被我个人喜好主导。这个项目核心目的在于记录让自己有印象的信息做一个留存以及共享。&#x1f3af; 项目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.小结 这篇文章&#xff0c;我们主要来学习一下进程的定义&#xff0…...

CRI-O, Containerd, Docker, Postman等概念介绍

参考&#xff1a;Docker&#xff0c;containerd&#xff0c;CRI&#xff0c;CRI-O&#xff0c;OCI&#xff0c;runc 分不清&#xff1f;看这一篇就够了Docker, containerd, CRI-O and runc之间的区别&#xff1f; Docker、Podman、Containerd 谁才是真正王者&#xff1f;CRI-O …...

【原创】java+swing+mysql设备预约管理系统设计与实现

我们在办公室或者学校实验室的&#xff0c;经常需要使用一些设备&#xff0c;因此需要提前租借。今天我们主要介绍如何使用javaswing和mysql数据库去完成一个设备预约管理系统&#xff0c;方便用户进行设备管理和预约。 功能分析&#xff1a; 设备预约管理系统主要是为了方便…...

7、kubernetes(k8s)Dashboard 安装

本文内容以语雀为准 说明 Kubernetes Dashboard 是一个通用的、基于Web的UI&#xff0c;用于Kubernetes集群管理。 它允许用户管理群集中运行的应用程序并对其进行故障排除&#xff0c;以及管理群集本身。 不同 Kubernetes Dashboard 支持的 Kubernetes 版本不同&#xff0c;…...

数学小课堂:虚数的媒介工具作用(虚构一个现实中不存在的概念,来解决现实问题)

文章目录 引言I 预备知识1.1 平方根1.2 三次方程1.3 极坐标II 虚数2.1 虚数的来源2.2 理解虚数存在的必要性2.3 虚数的影响III 复数3.1 人类认知升级的过程3.2 数字的扩展历史3.3 复数的用途引言 虚数的来源和存在的必要性:三次方程是一定有实数解的,因此根号里面负数的问题…...

3.抽象工厂模式(Abstract Factory)

与工厂模式对比 工厂模式 工厂模式是类创建模式。在工厂模式中&#xff0c;只需要生产同一种产品&#xff0c;只不过是生产厂家不同。 所以产品类的设计&#xff1a; 抽象的产品类Product具体的产品类Product_A&#xff0c;Product_B, Product_C, Product_D…… 工厂的设计…...

Flask RESTful 示例

目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题&#xff1a; 下面创建一个简单的Flask RESTful API示例。首先&#xff0c;我们需要创建环境&#xff0c;安装必要的依赖&#xff0c;然后…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路

进入2025年以来&#xff0c;尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断&#xff0c;但全球市场热度依然高涨&#xff0c;入局者持续增加。 以国内市场为例&#xff0c;天眼查专业版数据显示&#xff0c;截至5月底&#xff0c;我国现存在业、存续状态的机器人相关企…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板&#xff0c;就像一个模具&#xff0c;里面可以将不同类型的材料做成一个形状&#xff0c;其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式&#xff1a;templa…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

代码规范和架构【立芯理论一】(2025.06.08)

1、代码规范的目标 代码简洁精炼、美观&#xff0c;可持续性好高效率高复用&#xff0c;可移植性好高内聚&#xff0c;低耦合没有冗余规范性&#xff0c;代码有规可循&#xff0c;可以看出自己当时的思考过程特殊排版&#xff0c;特殊语法&#xff0c;特殊指令&#xff0c;必须…...