dump 命令
用途
转储命令选择对象文件的几个部分。
语法
转储 { -a -c -d -g -h -l -n -o -p-r -s -t -u -v -H -R -T} [ -zName [,Number ] [ + zNumber ] [-tIndex [ + tIndex ]] [ -X {32|64|32_64|d64|any}] File ...
注: 请勿在 -z Name 标志与Number 参数之间放置空格。
描述
dump 命令转储指定的 File 参数的所选部分。 命令 dump 可以接受对象文件、压缩文件,以及可执行文件。
标志
| 项 | 描述 |
|---|---|
| -a | 转储每个规定的压缩文件成员的压缩头。 |
| -c | 转储字符串表。 |
| -d | 转储每个区域中的原始数据。 |
| -g | 在压缩文档的符号表中转储全局符号。 |
| -h | 转储区域头。 |
| -l | 转储行号信息。 |
| -n | 转储所有装载者区域的信息。 |
| -O | 转储每个可选头。 |
| -p | 取消报头打印。 |
| -r | 转储重定位信息。 |
| -s | 转储每个选择的原始数据。 |
| -t | 转储符号表条目。 |
| -t索引 | 仅转储索引符号表条目,由 Index 参数设定。 使用 -t 标志和 +t 标志来指定符号表条目的范围。 |
| + t索引 | 转储符号条目的范围以 Index 参数为结尾。 范围开始于第一个符号表条目或由 -t 标志指定的条目。 |
| -U | 在 File 参数的名称下加下划线。 |
| -v | 转储符号表示的信息而不是数值。 除了标志 -o 和标志 -s 外,任何标志都可以和 -v 标志连用。 |
| -z名称[,Number] | 转储 Name 参数的行号条目或者以指定数字开始的行号条目范围。 |
| + z数字 | 将所有行号都转储到 Number 参数中。 |
| -h | 转储装载者区的报头。 标志 -H 只能应用于可执行文件。 |
| -R | 转储引导区的重定位条目。 标志 -R 只能应用于可执行文件。 |
| -t | 转储装载者区的符号表条目。 标志 -t 只能应用于可执行文件。 |
| -X 方式 | 指定了 damp 应进行检查的对象文件的类型。 mode 必须是以下各项中的一个:
缺省值为处理 32 位对象文件(忽略 64 位对象文件)。 mode 也可用 OBJECT_MODE 环境变量来设置。 例如,OBJECT_MODE=64 使 dump 仅处理 64 位的对象而忽略 32 位的对象。 -X 标志覆盖 OBJECT_MODE 变量。 |
示例
- 要转储a.out文件,请输入:
dump -c a.out - 要将 XCOFF 数据部分的内容转储到标准输出,请输入:
dump -d a.out - 要转储对象文件头,请输入:
dump -o a.out - 要转储以下对象的行号信息:a.out文件,请输入:
dump -l a.out - 要转储以下对象的重定位信息:a.out文件,请输入:
dump -r a.out - 要转储a.out对象文件文本部分,请输入:
dump -s a.out - 要转储符号表信息,请执行以下操作:a.out对象文件,请输入:
dump -t a.out - 要打印符号表条目20至31如果没有头信息,请输入:
dump -p -t20 +t30 a.out - 要只从 lib.a 中的 64 位对象转储对象文件头时,请输入:
dump -X64 -o lib.a