当前位置: 首页 > news >正文

Linux nm命令

Linux的nm命令主要用于列出对象文件中的符号。以下是一些使用示例:

  1. 基本用法:只需运行’nm’命令,并将对象文件的名称作为输入传递给它。例如,我使用’nm’命令与’apl’elf 文件:nm apl

  2. 在输出中为每个符号前面添加文件名:可以使用-A命令行选项来实现这一点。例如:nm -A apl

  3. 使nm显示调试符号:要使nm在输出中也显示调试符号,使用-a命令行选项。例如:nm -a apl

  4. 使nm解码低级符号名称:如果你想,你甚至可以强制nm将低级符号名称解码为用户级名称。这可以通过使用-C命令行选项来实现。例如:nm -C apl

  5. 显示引用某个符号的对象文件:以下命令显示了在我当前目录中引用符号‘func’的所有对象文件:$ nm -A ./*.o | grep func

  6. 在可执行文件中显示所有未定义的符号:以下命令列出了可执行文件‘1’中的所有未定义符号:$ nm -u 1


nm命令默认的排序方式是按照符号在文件中出现的顺序。但是,你可以使用以下选项来改变排序方式:

  1. 按地址数字排序:使用-n或者-v或者--numeric-sort选项,可以按照符号的地址数字进行排序。例如:nm -n apl

  2. 不排序:如果你不想对符号进行任何排序,只需在命令中加入-p或者--no-sort选项。例如:nm -p apl

  3. 反向排序:如果你想从文件的末尾开始显示符号表,可以使用-r选项。例如:nm -r apl

至于查找符号,你可以使用管道和grep命令来查找特定的符号。例如,如果你想查找名为“func”的符号,你可以这样做: nm apl | grep func。这将会在输出中查找包含“func”的所有行。

以上就是一些基本的使用示例,更多详细信息和选项,你可以参考man nm来获取。

参考链接:https://www.explainshell.com/explain/1/nm

http://www.lryc.cn/news/207935.html

相关文章:

  • iOS发布证书.p12文件无密码解决办法及导出带密码的新.p12文件方法
  • OpenCamera拍照的代码流程
  • 华为OD机考算法题:矩阵最大值
  • 【Javascript】函数之形参与实参
  • PAT 乙级1090危险品装箱
  • Response Header中不暴露Server(IIS)版本、ASP.NET及相关版本等信息
  • 测试C#调用Vlc.DotNet组件播放视频
  • JS的事件委托(Event Delegation)
  • selenium+python自动化安装驱动 碰到的问题
  • laravel+vue2 element 一套项目级医院手术麻醉信息系统源码
  • GEE——使用MODIS GPP和LAI数据进行一元线性回归计算和R2分析
  • [论文阅读]Point Density-Aware Voxels for LiDAR 3D Object Detection(PDV)
  • 自动化学报格式 Overleaf 在线使用 【2023最新教程】
  • 掌握CSS动画技巧:打造引人注目的页面过渡效果!
  • 薛定谔的猫重出江湖?法国初创公司AliceBob研发猫态量子比特
  • 18亿欧元大动作,法国瞄准实现量子飞跃
  • 写保护设置——三、I2C EEPROM
  • 【嵌入式】HC32F07X ADC采样及软件滤波
  • VSCode snippets
  • openEuler 22.03 LTS 环境使用 Docker Compose 一键部署 JumpServer (all-in-one 模式)
  • 宏电5G RedCap工业智能网关获首个中国移动5G物联网开放实验室5G及轻量化产品能力认证
  • MySQL查询今日、昨日、最近七天的数据
  • Oracle 19c新特性:DBCA静默模式克隆远端PDB
  • css:如何通过不同的值,改变盒子的样式和字体颜色通过computed而不是v-if
  • 做外贸真诚是最好的套路
  • RPA厂商大比拼,哪家才更适合您?
  • 更换网络ip地址怎么设置
  • 开始学习Go编程
  • 《SpringBoot项目实战》第五篇—接口发生异常如何统一处理
  • vue+golang上传微信头像