小编给大家分享一下linux中size命令怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
size
命令基本上就是输出指定输入文件各段及其总和的大小。下面是该命令的语法:
size [-A|-B|--format=compatibility] [--help] [-d|-o|-x|--radix=number] [--common] [-t|--totals] [--target=bfdname] [-V|--version] [objfile...]
man 页是这样描述它的:
GNU 的
size
程序列出参数列表中各目标文件或存档库文件的段大小 — 以及总大小。默认情况下,对每个目标文件或存档库中的每个模块都会产生一行输出。
objfile...
是待检查的目标文件。如果没有指定,则默认为文件a.out
。
下面是一些问答方式的案例,希望能让你对 size
命令有所了解。
size
的基本用法很简单。你只需要将目标文件/可执行文件名称作为输入就行了。下面是一个例子:
size apl
该命令在我的系统中的输出如下:
How to use size command
前三部分的内容是文本段、数据段和 bss 段及其相应的大小。然后是十进制格式和十六进制格式的总大小。***是文件名。
根据 man 页的说法,size
的默认输出格式类似于 Berkeley 的格式。然而,如果你想的话,你也可以使用 System V 规范。要做到这一点,你可以使用 --format
选项加上 SysV
值。
size apl --format=SysV
下面是它的输出:
How to switch between different output formats
默认情况下,段的大小是以十进制的方式来展示。然而,如果你想的话,也可以使用八进制或十六进制来表示。对应的命令行参数分别为 o
和 -x
。
How to switch between different size units
关于这些参数,man 页是这么说的:
-d
-o
-x
--radix=number
使用这几个选项,你可以让各个段的大小以十进制(
-d
或--radix 10
)、八进制(-o
或--radix 8
);或十六进制(-x
或--radix 16
)数字的格式显示。--radix number
只支持三个数值参数(8、 10、 16)。总共大小以两种进制给出;-d
或-x
的十进制和十六进制输出,或-o
的八进制和十六进制输出。
如果你用 size
一次性查找多个文件的段大小,则通过使用 -t
选项还可以让它显示各列值的总和。
size -t [file1] [file2] ...
下面是该命令的执行的截屏:
How to make size command show totals of all object files
-t
选项让它多加了***那一行。
若你为 size
提供多个输入文件作为参数,而且想让它显示每个文件中公共符号(指 common segment 中的 symbol)的大小,则你可以带上 --common
选项。
size --common [file1] [file2] ...
另外需要指出的是,当使用 Berkeley 格式时,这些公共符号的大小被纳入了 bss 大小中。
除了刚才提到的那些选项外,size
还有一些一般性的命令行选项,比如 v
(显示版本信息)和 -h
(可选参数和选项的汇总)。
What are the other available command line options
除此之外,你也可以使用 @file
选项来让 size
从文件中读取命令行选项。下面是详细的相关说明:
读出来的选项会插入并替代原来的
@file
选项。若文件不存在或着无法读取,则该选项不会被替换,而是会以字面意义来解释该选项。文件中的选项以空格分隔。当选项中要包含空格时需要用单引号或双引号将整个选项包起来。通过在字符前面添加一个反斜杠可以将任何字符(包括反斜杠本身)纳入到选项中。文件本身也能包含其他的@file
选项;任何这样的选项都会被递归处理。
以上是“linux中size命令怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。