当前位置: 首页 > Linux

8个案例掌握linuxstat命令

时间:2023-04-06 06:42:13 Linux

在Linux中,似乎总有一种灵巧的方法来搞定事情。对于任何任务,总有多个命令行实用程序可以更好地执行它。Linuxstat命令是一个用于显示文件详细信息的命令行工具。在本指南中,我们将重点介绍stat命令在Linux中的8种用法。这适用于所有Linux发行版。stat命令将stat命令视为ls-l命令的更好版本。虽然-l标志提供有关文件的更多详细信息,例如文件所有权和权限,但stat命令更深入并提供有关文件的大量信息。Linuxstat命令的语法如下所示$stat[OPTION]filename(1)不带参数的stat命令在最简单的形式(不带任何参数)中,stat命令显示默认输出。这包括文件大小和类型、设备类型、inode编号、UID、GID、链接数以及文件的访问/修改日期。$statfile1.txt输出条目对应于以下内容:File:这将显示文件的名称Size:文件的大小(以字节为单位)Block:分配给文件的块数IOBlock:文件的大小(以字节为单位)每个块Device:十进制或十进制格式的设备编号Inode:文件的inode编号Links:与文件关联的硬链接数Access:符号或数字格式的文件权限Uid:用户ID和所有者名称Gid:Owner'sGroupIDandnameContext:SeLinuxsecuritycontextFiletype:文件类型(是否是普通文件,符号链接等)Access:文件最后被访问的时间Modify:文件内容被修改的时间lastchangedChange:显示最后一个文件的元数据,例如权限和所有权被更改。(2)查看多个文件信息通过在命令行中一个一个指定文件,可以查看多个文件的详细报告,如下图。$statfile1.txtfile2.pdf(3)显示文件系统状态您可以使用-f选项检查文件所在的文件系统状态,如下所示。$stat-f/home(4)以紧凑的形式显示信息-t选项用于以紧凑的格式显示信息,如下所示$stat-tfile1.txt(5)启用符号链接的跟随通常,如果您是在符号链接上运行stat命令只会为您提供有关链接的信息,而不是链接指向的文件。以/usr/share/Zoneinfo/America/Cayman符号链接为例。$stat/usr/share/zoneinfo/America/Cayman在上面的例子中,符号链接/usr/share/Zoneinfo/America/Cayman指向巴拿马,符号链接只有6个字节。要获取有关链接指向的文件的信息,请使用-L选项,也称为取消引用选项。$stat-L/usr/share/zoneinfo/America/Cayman(6)格式顺序在前面的例子中,我们已经看到stat命令在终端上打印了很多信息。如果需要特定信息,可以使用格式序列自定义输出以提供所需内容,同时保留其他详细信息。自定义输出的常用表达式包括printf或格式选项。例如,要仅显示文件的索引节点,请使用如下所示的%i格式序列。操作数\n打印一个新行。$stat--printf='%i\n'file1.txt要显示访问权限和uid,请使用%a和%u格式序列。$stat--printf='%a:%u\n'file1.txtformat选项打印没有附加操作数的换行符。$stat--format='%a:%F'file1.txt以下是可用格式序列的完整列表%a以八进制格式显示访问权限%A以人类可读格式显示访问权限。%b已分配块的数量(参见%B)%B%b以字节为单位报告每个块的大小%C显示SELinux安全上下文字符串%d以十进制格式显示设备号%D十六进制%f以十六进制显示原始模式%F显示文件类型%g打印所有者的组ID%G打印所有者的组名%h显示硬链接数%i打印索引节点数%m打印挂载点%n显示文件名%N显示引用的文件名,如果符号链接取消引用%o打印最佳I/O传输大小提示%s总大小(以字节为单位)%t字符/块特殊文件的十六进制主要设备类型%T角色/块特殊文件的次要设备类型%u显示所有者的用户ID%U打印所有者的用户名%w文件创建时间,人类可读-如果未知,显示为0%W存档创建时间,纪元时间-如果未知,显示为0%x最后访问时间,人类可读%X最后访问时间,纪元时间%y显示最后修改时间,人类可读%Y显示最后修改时间,纪元时间%z最后更改时间,人类可读%Z最后更改时间,纪元时间(7)getstat命令帮助如需更多命令选项,请使用stat命令中的帮助选项。$stat--help也可以访问stat命令的manpage,运行$manstat(8)查看stat的版本$stat--version我的开源项目课程-tencent-cloud(酷瓜云课堂-gitee仓库)课程-腾讯云(酷瓜云课堂-github仓库)