Как я могу найти функцию в файлах общих объектов, используя функции objdump и bash в Linux?
-
28-10-2019 - |
Вопрос
У меня есть папка в Linux, которая содержит несколько общих объектных файлов (*.so). Как я могу найти функцию в файлах общих объектов, используя функции objdump и bash в Linux?
Например, следующий пример - это функция func1
в mylib.so:
objdump -d mylib.so | grep func1
Но я хочу найти func1
в папке, которая содержит общие объектные файлы. Я не знаю языка BASH и как комбинировать команды терминалов Linux.
Решение
nm
проще objdump
, для этой задачи.
nm -A *.so | grep func
должно сработать. А -A
Флаг рассказывает nm
Чтобы распечатать имя файла.
Другие советы
Вы можете использовать также использовать,
find <path> -name "*.so" -exec nm {} \; | grep func1
Не связан с StackOverflow