nm命令是Linux下自带的强大的文本分析工具,是命令来源于name的简写。该命令用来列出指定文件中的符号(如常用的函数名、变量等,以及这些符号存储的区域)。它显示指定文件中的符号信息,文件可以是对象文件、可执行文件或对象文件库。如果文件中没有包含符号信息,nm报告该情况,单不把他解释为出错。nm缺省情况下报告十进制符号表示法下的数字值。
nm命令可选参数如下:
参数说明:
下面使用的用例时一段简单的c语言代码,其源码如下:
这里我们直接使用nm命令将a.out(上文代码编译出的elf文件)里的符号全部列出。
如上面nm列出的结果中每个符号意义如下: 对于每个符号,nm 显示:
• 符号值,由选项选择的基数(见下文),或默认为十六进制。
• 符号类型。至少使用以下类型;其他的也取决于对象文件格式。如果是小写,符号通常是本地的;如果是大写,则符号是全局的(外部的)。然而,对于特殊的全局符号(“u”、“v”和“w”)显示了一些小写符号
觉得这篇文章对你有帮助的话,就留下一个赞吧^v^* 请尊重作者,转载还请注明出处!感谢配合~ [作者]: Imagine Miracle [版权]: 本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。 [本文链接]: https://blog.csdn.net/qq_36393978/article/details/124104635
使用道具 举报
本版积分规则 发表回复 回帖后跳转到最后一页
荣誉红客
昨天 08:06
前天 20:05
前天 13:49
5 天前
中国红客联盟公众号
联系站长QQ:5520533