查找库文件中是否包含某个函数,库文件是否包含某个全局变量,库文件是否包含某个文件

strings 指令

释义:在对象文件或二进制文件中查找可打印的字符串:
用法:需要结合 grep 指令;可以把库文件直接文本打开看下,有字符串的内容,都是可以搜到的

库文件文本方式打开示例
在这里插入图片描述

使用示例

# 查找函数 PmmIsOwnerId
root@d7eb809e3b19:~/share/hqd-951-2023_mpu/pmm_srt_xbus/lib# strings libpmm_srt_xbus.so | grep PmmIsOwnerId
PmmIsOwnerId
# 查找全局变量 g_mem_buf_
root@d7eb809e3b19:~/share/hqd-951-2023_mpu/pmm_srt_xbus/lib# strings libpmm_srt_xbus.so | grep g_mem_buf_
g_mem_buf_
# 查找文件 srt_memory.c
root@d7eb809e3b19:~/share/hqd-951-2023_mpu/pmm_srt_xbus/lib# strings libpmm_srt_xbus.so | grep srt_memory.c
/root/share/hqd-951-2023_mpu/pmm_srt_xbus/build/../../pmm_srt_xbus/src/cbb_srt/src/srt_memory.c
srt_memory.c

语法

strings [ -a ] [ - ] [ -o ] [ -t Format ] [ -n Number ] [ -Number ]  [file ... ]

选项

-a --all:扫描整个文件而不是只扫描目标文件初始化和装载段
-f –print-file-name:在显示字符串前先显示文件名
-n –bytes=[number]:找到并且输出所有NUL终止符序列
- :设置显示的最少的字符数,默认是4个字符
-t --radix={o,d,x} :输出字符的位置,基于八进制,十进制或者十六进制
-o :类似--radix=o
-T --target= :指定二进制文件格式
-e --encoding={s,S,b,l,B,L} :选择字符大小和排列顺序:s = 7-bit, S = 8-bit, {b,l} = 16-bit, {B,L} = 32-bit

扩展:另外还有 objdump 和 nm 指令也可以查看

  • 11
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值