0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在Linux中安装stat

CHANBAEK 来源:TIAP 作者:GLIU 2022-12-09 17:35 次阅读

GNU coreutils包中包含的stat命令提供了各种元数据,包括文件大小、inode位置、访问权限和SELinux上下文,以及关于文件和文件系统的创建和修改时间。这是一种收集信息的便捷方法,通常需要使用多个不同的命令来获取这些信息。

在Linux中安装stat

在Linux上,你可能已经安装了stat命令,因为它是核心程序包的一部分,默认情况下通常与Linux发行版捆绑在一起。

如果没有安装stat,可以使用包管理器安装coreutils。

或者,你可以下载源代码编译coreutils

获取文件的状态

运行stat提供一个关于特定文件或目录的易读的输出:

$ stat planets.xml
  File: planets.xml
  Size: 325      Blocks: 8     IO Block: 4096   regular file
Device: fd03h/64771d    Inode: 140217      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (1000/tux)   Gid: (100/users)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2021-08-17 18:26:57.281330711 +1200
Modify: 2021-08-17 18:26:58.738332799 +1200
Change: 2021-08-17 18:26:58.738332799 +1200
 Birth: 2021-08-17 18:26:57.281330711 +1200

它可能很容易阅读,但仍然有很多信息。以下是stat所涵盖的内容:

  • File: 文件名
  • Size: 以字节为单位的文件大小
  • Blocks: 硬盘上为此文件保留的块数
  • IO Block: 文件系统块的大小
  • regular file: 文件类型(常规文件、目录、文件系统)
  • Device: 文件所在的设备
  • Inode: 文件所在的索引节点号
  • Links: 指向该文件的链接数
  • Access, UID, GID: 文件权限、用户和组所有者
  • Context: SELinux 上下文
  • Access, Modify, Change, Birth: 访问、修改、更改状态和创建文件的时间戳

简洁输出

对于非常了解输出的人,或者希望使用其他实用程序(如awk)解析输出的人,可以使用 --terse(-t)选项,该选项可以格式化输出,而不使用标题或换行符。

$ stat --terse planets.xml
planets.xml 325 8 81b4 100977 100 fd03 140217 1 0 0 1629181617 1629181618 1629181618 1629181617 4096 unconfined_u:object_r:user_home_t:s0

选择自己的格式

你可以使用--printf选项和类似于printf的语法定义自己的输出格式。stat报告的每个属性都有一个格式序列(%C表示SELinux上下文,%n表示文件名,等等),因此你可以选择希望在报告中看到的内容。

$ stat --printf="%n\\n%C\\n" planets.xml
planets.xml
unconfined_u:object_r:user_home_t:s0
$ $ stat --printf="Name: %n\\nModified: %y\\n" planets.xml
Name: planets.xml
Modified: 2021-08-17 18:26:58.738332799 +1200

以下是一些常见的格式序列:

  • %a 访问权限
  • %F 文件类型
  • %n 文件名称
  • %U 用户名称
  • %u 用户ID
  • %g 组 ID
  • %w 创建时间
  • %y 修改时间

详情大家可以参考stat手册或者coreutils手册。

文件信息

如果你曾经尝试过解析ls-l的输出,那么你会喜欢stat命令的灵活性。你并不总是需要stat提供的所有默认信息,但是当你确实需要部分或全部信息时,该命令是很好用的。无论你是以默认格式读取其输出,还是创建自己的查询,stat命令都可以让你轻松访问有关数据的数据。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11302

    浏览量

    209428
  • 命令
    +关注

    关注

    5

    文章

    684

    浏览量

    22019
  • Stat
    +关注

    关注

    0

    文章

    3

    浏览量

    6990
收藏 人收藏

    评论

    相关推荐

    何在Arch Linux系统安装Cutefish桌面环境

    现在你可以在 Arch Linux 中体验 Cutefish 桌面了。本文概述了在 Arch Linux 系统安装 Cutefish 桌面环境的步骤。
    的头像 发表于 04-19 17:05 6154次阅读

    【嵌入式编程】如何在Linux平台安装zint开源库

    Linux编程】如何在Linux平台安装zint开源库?
    的头像 发表于 08-23 19:10 3908次阅读
    【嵌入式编程】如<b class='flag-5'>何在</b><b class='flag-5'>Linux</b>平台<b class='flag-5'>安装</b>zint开源库

    何在Linux安装和使用Checkmk工具

    设备。Checkmk 工具在 Linux 以混合方式工作。在 Linux 机器上安装该工具后,您可以通过 Web 浏览器轻松访问所有配置和仪表板选项卡。
    发表于 10-14 11:52 1735次阅读

    何在Linux终端上安装和玩经典的贪吃蛇游戏

    本文就是如何在 Linux 终端上安装和玩经典的贪吃蛇游戏。
    发表于 10-17 09:48 1727次阅读

    何在Linux安装stat

    GNU coreutils包包含的stat命令提供了各种元数据,包括文件大小、inode位置、访问权限和SELinux上下文,以及关于文件和文件系统的创建和修改时间。这是一种收集信息的便捷方法,通常需要使用多个不同的命令来获取这些信息。
    发表于 11-25 16:46 806次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>Linux</b><b class='flag-5'>中</b><b class='flag-5'>安装</b><b class='flag-5'>stat</b>

    何在Linux安装字体

    问题场景在用itext开发完PDF之后,有要求Apache要部署到Linux下,也可能部署到windows下,由于笔者在Windows下开发的,字体没问题;但是Linux未必安装了字体,关于如
    发表于 07-04 08:14

    何在 Linux安装 Python

    何在 Linux安装 Python 在 Linux安装最新 Python,替代或与老版本并存的分步说明。作者:Vijay Sing
    发表于 05-14 14:13

    何在Win下安装linux的虚拟机详细安装方法资料概述

    本文档的主要内容详细介绍的是如何在Win7下安装linux的虚拟机详细安装方法资料概述免费下载。
    发表于 11-28 15:03 3次下载

    何在Ubuntu桌面环境上安装Google Chrome ?

    作为全球最受欢迎的网页浏览器,新的 Linux 用户经常会问如何在 Ubuntu 安装谷歌浏览器。 这不是一个愚蠢的问题。围绕构建 Linu
    发表于 05-05 14:00 2248次阅读

    怎样安装和使用Kali Linux

    KALI Linux安装教程:如何在USB驱动器上安装Kali Linux
    的头像 发表于 08-01 10:31 2.2w次阅读

    何在linux服务器打开端口

    有时我们可能需要在Linux服务器打开端口或在Linux服务器的防火墙启用端口来运行特定的应用程序。在本文中,小编将带大家分析一下如何在
    的头像 发表于 10-17 16:22 1.2w次阅读

    何在Linux查找断开的符号链接

    在之前的文章,我们解释了什么是 Linux 的符号链接。符号链接(Symbolic links 或 symlinks)或软链接(soft links)用于在 Linux
    的头像 发表于 02-06 18:23 1639次阅读

    何在Linux命令行运行Python脚本

    Python 是一种高级编程语言,被广泛应用于数据科学、机器学习、Web 开发等领域。在 Linux 操作系统,Python 是一个默认安装的解释器,用户可以通过命令行界面(CLI)来运行
    的头像 发表于 05-12 14:49 1685次阅读

    Linux如何使用Docker安装MySQL

    如果您是 MySQL 的新手或希望快速轻松地安装 MySQL 数据库的人,那么本文适合您,在本文中,我们将学习如何在 Linux 中使用 Docker 和 Docker compose 设置 MySQL。 让我们首先设置
    的头像 发表于 05-12 16:22 3650次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>中</b>如何使用Docker<b class='flag-5'>安装</b>MySQL

    linux docker安装部署

    了解如何在Linux安装和部署Docker。 一、安装Docker 在开始之前,请确保您的Linux系统满足以下要求: 64位版本的
    的头像 发表于 11-23 09:27 1130次阅读