带你入门Linux中size命令的6个例子
前言 正如你所知道的那样,Linux 中的目标文件或着说可执行文件由多个段组成(比如文本段和数据段)。若你想知道每个段的大小,那么确实存在这么一个命令行工具 ―― 那就是 size。在本教程中,我们将会用几个简单易懂的案例来讲解该工具的基本用法。 在我们开始前,有必要先声明一下,本文的所有案例都在 Ubuntu 16.04 LTS 中测试过了。 Linux size 命令 size 命令基本上就是输出指定输入文件各段及其总和的大小。下面是该命令的语法: size [-A|-B|--format=compatibility] [--help] [-d|-o|-x|--radix=number] [--common] [-t|--totals] [--target=bfdname] [-V|--version] [objfile...] man 页是这样描述它的:
下面是一些问答方式的案例,希望能让你对 size 命令有所了解。 Q1、如何使用 size 命令? size 的基本用法很简单。你只需要将目标文件/可执行文件名称作为输入就行了。下面是一个例子: size apl 该命令在我的系统中的输出如下: How to use size command 前三部分的内容是文本段、数据段和 bss 段及其相应的大小。然后是十进制格式和十六进制格式的总大小。最后是文件名。 Q2、如何切换不同的输出格式? 根据 man 页的说法,size 的默认输出格式类似于 Berkeley 的格式。然而,如果你想的话,你也可以使用 System V 规范。要做到这一点,你可以使用 --format 选项加上 SysV 值。 size apl --format=SysV 下面是它的输出: How to switch between different output formats Q3、如何切换使用其他的单位? 默认情况下,段的大小是以十进制的方式来展示。然而,如果你想的话,也可以使用八进制或十六进制来表示。对应的命令行参数分别为 o 和 -x。 How to switch between different size units 关于这些参数,man 页是这么说的:
Q4、如何让 size 命令显示所有对象文件的总大小? 如果你用 size 一次性查找多个文件的段大小,则通过使用 -t 选项还可以让它显示各列值的总和。 size -t [file1] [file2] ... 下面是该命令的执行的截屏: How to make size command show totals of all object files -t 选项让它多加了最后那一行。 Q5、如何让 size 输出每个文件中公共符号的总大小? 若你为 size 提供多个输入文件作为参数,而且想让它显示每个文件中公共符号(指 common segment 中的 symbol)的大小,则你可以带上 --common 选项。 size --common [file1] [file2] ... 另外需要指出的是,当使用 Berkeley 格式时,这些公共符号的大小被纳入了 bss 大小中。 Q6、还有什么其他的选项? 除了刚才提到的那些选项外,size 还有一些一般性的命令行选项,比如 v (显示版本信息)和 -h (可选参数和选项的汇总)。 What are the other available command line options 除此之外,你也可以使用 @file 选项来让 size 从文件中读取命令行选项。下面是详细的相关说明:
结论 很明显,size 命令并不适用于所有人。它的目标群体是那些需要处理 Linux 中目标文件/可执行文件结构的人。因此,如果你刚好是目标受众,那么多试试我们这里提到的那些选项,你应该做好每天都使用这个工具的准备。想了解关于 size 的更多信息,请阅读它的 man 页 。 总结 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对编程小技巧的支持。 您可能感兴趣的文章:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |