初学者的Linux stat命令教程(5个示例)

初学者的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没有学习曲线是错误的,但是工具要求的努力量并不多,因为它提供的命令行选项的数量是有限的。 我们已经在这里讨论了其中的大部分。 有关更多信息,请转到该工具的手册页

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏