linux中nm命令

不及物动词 其他 111

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    nm命令是Linux系统中的一个工具,用于查看和分析目标文件(二进制文件)中的符号表信息。符号表记录了该目标文件中使用的全局变量、函数和外部引用的符号信息。通过使用nm命令,我们可以了解目标文件中的符号名称、地址、类型以及相关的调试信息。

    使用nm命令的一般语法如下:
    nm [options] <目标文件>

    其中,options是一些可选参数,可以用于控制输出的内容和格式。常用的选项包括:
    – -a:显示全部符号,包括局部符号和外部符号;
    – -o:按符号的地址递增的顺序进行排序;
    – -p:显示符号的名称和地址,但不显示符号的类型等其他信息;
    – -C:显示C++符号表中的符号;
    – -D:显示动态符号表中的符号;
    – -S:同时显示符号表和源码(如果有源码)。

    下面是一些常见的nm命令的使用示例:
    1. 查看目标文件中的所有符号:
    nm <目标文件>

    2. 查看目标文件中的符号名称和地址:
    nm -p <目标文件>

    3. 查看目标文件中的所有符号,并按地址递增的顺序进行排序:
    nm -o <目标文件>

    4. 查看目标文件中的C++符号表中的符号:
    nm -C <目标文件>

    总之,nm命令是Linux系统中用于查看和分析目标文件中符号表信息的实用工具。通过使用nm命令,我们可以快速了解目标文件中的符号名称、地址、类型等信息,从而方便进行调试和分析工作。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    nm命令用于显示二进制文件(如可执行文件、目标文件、动态链接库等)中的符号表。它可以列出文件中所有的符号以及它们的地址信息。本文将介绍nm命令的常用选项和用法。

    1. 显示符号表:使用nm命令后面跟上文件名,即可显示该文件的符号表。例如,`nm filename`将显示filename文件中的所有符号。

    2. 选择显示符号类型:通过nm命令的不同选项,可以选择显示不同类型的符号。常用的选项有:
    – `-a`:显示所有符号,包括隐藏符号。
    – `-g`:只显示全局符号。
    – `-U`:只显示未定义符号。
    – `-u`:只显示被未定义符号引用的符号。
    – `-t`:按地址排序显示符号。

    3. 显示符号的地址和类型:nm命令默认显示符号的地址以及它们的类型。符号的类型包括函数(T)、对象(D)、未初始化的对象(B)、只读对象(R)等。地址用十六进制表示。

    4. 查找特定符号:可以通过在nm命令后面加上特定的符号名,来查找指定的符号。例如,`nm filename symbolname`将显示指定符号的地址和类型。

    5. 结合其他命令使用:可以将nm命令与其他命令结合使用,以实现更复杂的功能。例如,可以使用grep命令过滤出特定类型的符号,或者使用awk命令对符号进行进一步处理。

    总结:nm命令是一个非常实用的工具,可以帮助开发人员分析二进制文件中的符号表信息。通过了解nm命令的常用选项和用法,可以更好地进行软件开发和调试工作。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    NM命令是Linux系统中的一个常用命令,用于显示目标文件或者可执行文件中的符号表。符号表记录了函数、变量、常量等符号的名称及其对应的地址信息。通过使用NM命令,可以查看到目标文件或者可执行文件中的所有符号。

    NM命令的基本语法如下:

    “`
    nm [options] [filename]
    “`

    其中,options是一些选项参数,filename是要查看符号表的目标文件或者可执行文件的名称。

    下面是NM命令的一些常用选项参数:

    – `-n`:按照符号的地址大小排序,默认情况下是按照符号的名称排序。
    – `-A`:显示所有符号,包括未导出的和重定位的符号。
    – `-a`:列出目标文件中的所有符号,包括文件局部的符号。
    – `-g`:只显示外部可见符号,即全局符号和弱符号。
    – `-u`:只显示未定义的符号。
    – `-C`:显示C++类的成员函数。
    – `-l`:显示符号的库名称。

    下面是NM命令的一些实际操作示例:

    1. 使用nm命令查看可执行文件的符号表

    “`
    $ nm my_program
    “`

    2. 使用-n选项按照地址大小排序

    “`
    $ nm -n my_program
    “`

    3. 使用-g选项只显示全局符号和弱符号

    “`
    $ nm -g my_program
    “`

    4. 使用-u选项只显示未定义的符号

    “`
    $ nm -u my_program
    “`

    总之,NM命令是Linux系统中一个非常有用的命令,通过它可以查看可执行文件或者目标文件中的符号表,对于软件开发和调试过程中的问题定位非常有帮助。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部