初学者的Linux stat命令教程(5个示例)
有时,在Linux中使用命令行时,您需要了解更多关于文件的信息。 例如,您可能需要诸如文件大小,inode编号,访问权限,上次访问或修改时间等信息。 您会很高兴知道存在一个命令行实用程序统计信息,可以一次性提供所有这些信息。
在本教程中,我们将使用一些易于理解的示例来讨论stat的基础知识。 但在此之前,值得一提的是,这里提到的所有示例都已在Ubuntu 16.04LTS上进行了测试。
Linux stat命令
Linux中的stat命令允许您查看文件(甚至文件系统)的状态。 以下是该命令的语法:
stat [OPTION]... FILE...
以下是一些Q&A样式的例子,它们会给你一个关于stat如何工作的好主意。
Q1。 如何使用stat命令?
该工具的基本用法非常简单 - 您只需运行带有您想了解更多关于文件名称的“stat”命令。
stat [filename]
例如:
stat test.txt
因此,您可以查看文件名,文件大小,文件类型,访问权限,UID和GID以及访问/修改/更改时间等详细信息。
Q2。 如何以简洁的形式制作统计信息?
输出的简洁形式可以让其他程序轻松解析输出。 要以此格式输出“stat”输出信息,请使用-t命令行选项。
stat -t test.txt
Q3。 如何使自定义格式的统计输出信息?
为此,请使用--format选项。 此选项要求您输入有效的格式序列,并且可以使用其中的很多格式。 例如,要以人类可读形式访问权限/权限,请使用%A 。
例如:
stat --format=%A test.txt
产生以下输出:
同样,您可以使用%n作为文件名, %s作为文件大小, %U作为文件所有者的用户名。
Q4。 --format选项与--printf有什么不同?
核心,两个选项都是一样的。 区别在于产出的产生方式。 虽然--format在每次使用后输出一个换行符,但在--printf的情况下,不会添加换行符。 以下是手册页如何解释两者:
-c --format=FORMAT
use the specified FORMAT instead of the default; output a new?
line after each use of FORMAT
--printf=FORMAT
like --format, but interpret backslash escapes, and do not out?
put a mandatory trailing newline; if you want a newline, include
\n in FORMAT
Q5。 在输入文件是链接的情况下如何确保stat dereferences?
还有一个专门的选项: -L 。 因此,如果输入文件是链接,并且您希望stat在命令运行时遵循它,请按以下方式运行它:
stat -L [filename]
结论
说stat没有学习曲线是错误的,但是工具要求的努力量并不多,因为它提供的命令行选项的数量是有限的。 我们已经在这里讨论了其中的大部分。 有关更多信息,请转到该工具的手册页 。