Linux大小初学者命令教程(6个示例)

正如你们中的一些人可能已经知道的那样,Linux中的一个对象或可执行文件由几个部分(如txt和data)组成。如果你想知道...

Linux大小初学者命令教程(6个示例)

正如你们中的一些人可能已经知道的那样,Linux中的一个对象或可执行文件由几个部分(如txt和data)组成。 如果你想知道每个部分的大小,那么存在一个命令行实用程序 - 被称为大小 - 为您提供这些信息。 在本教程中,我们将使用一些易于理解的示例来讨论此工具的基础知识。

但是在这之前,值得一提的是本文提到的所有例子都已经在Ubuntu 16.04LTS上测试过了。

Linux大小的命令

size命令基本上列出了输入目标文件的段大小和总大小。 以下是该命令的语法:

size [-A|-B|--format=compatibility]
            [--help]
            [-d|-o|-x|--radix=number]
            [--common]
            [-t|--totals]
            [--target=bfdname] [-V|--version]
            [objfile...]

以下是手册页描述此实用程序的方式:

The GNU size utility lists the section sizes---and the total size---for each of the object or 
archive files objfile in its argument list. By default, one line of output is generated for each
object file or each module in an archive.

objfile... are the object files to be examined. If none are specified, the file "a.out" will be
used.

以下是一些Q&A样式的示例,可以让您更好地了解大小命令的工作原理。

Q1。 如何使用大小命令?

尺寸的基本用法很简单。 您所要做的就是将对象/可执行文件名称作为输入传递给工具。 以下是一个例子:

size apl

以下是在我们的系统上输出的上述命令:

如何使用大小命令

前三个条目是用于文本,数据和bss部分的,具有相应的大小。 然后是十进制和十六进制格式的总数。 最后,最后一项是文件名。

Q2。 如何在不同的输出格式之间切换?

默认的输出格式,大小手册页说,是类似于伯克利的格式。 但是,如果你愿意的话,你也可以使用System V惯例。 为此,您必须将SysV--format选项用作值。

size apl --format=SysV

以下是这种情况下的输出:

如何在不同的输出格式之间切换

Q3。 如何在不同大小的单位之间切换?

默认情况下,部分的大小以十进制显示。 但是,如果你愿意,你可以有八进制和十六进制这个信息。 为此,请使用-o-x命令行选项。

如何在不同大小的单位之间切换

以下是关于这些选项的手册页:

-d
-o
-x
--radix=number

Using one of these options, you can control whether the size of each section is given in decimal
(-d, or --radix=10); octal (-o, or --radix=8); or hexadecimal (-x, or --radix=16).  In
--radix=number, only the three values (8, 10, 16) are supported. The total size is always given in
two radices; decimal and hexadecimal for -d or -x output, or octal and hexadecimal if you're using
-o.

Q4。 如何使大小命令显示所有目标文件的总计?

如果您一次使用大小来查找多个文件的分段大小,那么如果您愿意,也可以让该工具提供所有列值的总计。 您可以使用-t命令行选项来启用此功能。

size -t [file1] [file2] ...

以下屏幕截图显示了此命令行选项的作用:

如何使大小命令显示所有目标文件的总计

输出中的最后一行已经被-t命令行选项添加了。

Q5。 如何在每个文件中打印常用符号的总大小?

如果您正在使用多个输入文件运行size命令,并希望命令在每个文件中显示常用符号,则可以使用--common命令行选项执行此操作。

size --common [file1] [file2] ...

还值得一提的是,当使用Berkeley格式时,这些都包含在bss中。

Q6。 还有哪些可用的命令行选项?

除了直到现在讨论的那些,size还提供了一些通用的命令行选项,例如-v (用于版本信息)和-h (用于对合格参数和选项进行摘要)

什么是其他可用的命令行选项

另外,您还可以从文件中进行大小读取命令行选项。 这可以使用@file选项。 以下是与此选项相关的一些详细信息:

The options read are inserted in place of the original @file option. If file does not exist, or 
cannot be read, then the option will be treated literally, and not removed. Options in file are
separated by whitespace. A whitespace character may be included in an option by surrounding the
entire option in either single or double quotes. Any character (including a backslash) may be
included by prefixing the character to be included with a backslash. The file may itself contain
additional @file options; any such options will be processed recursively.

结论

有一点很清楚,尺寸命令并不适合每个人。 它只针对那些在Linux中处理对象/可执行文件结构的人。 所以,如果你是目标受众,练习我们在这里讨论的选项,你应该准备好每天使用这个工具。 有关大小的更多信息,请转到其手册页


分享按钮