| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программное обеспечение под *NIX системы > есть ли аналог ollydbg для linux? |
| Автор: rthsobakas 5.9.2009, 12:45 |
| а конкретно, нужна прога которая бы вытаскивала названия процедур и функций из динамической библиотеки. Как это делает Олли. |
| Автор: rthsobakas 5.9.2009, 20:23 |
| славься линукс)) Даже париться и искать че то не надо)) |
| Автор: rthsobakas 5.9.2009, 20:55 | ||
| nickless, а какие там парамтры у objdump поставить чтобы только названия ф-ий выводил? Примерно выводит следующее
Добавлено через 47 секунд а нужно чтобы только названия ф-ий... Просто их много и редактировать тяжело будет. |
| Автор: bilbobagginz 5.9.2009, 21:47 |
| sed, cut в плавники, и вперёд. |
| Автор: rthsobakas 6.9.2009, 08:49 | ||||||
| bilbobagginz, ммм это есть не очень хороший вариант. Объясню почему cat 1.txt | cut -d ' ' -f19 вот к примеру так Текст такой
А в результате получим.
То есть потери! Поэтому я и спросил
то есть в ней самое непосредственно. |
| Автор: Бонифаций 6.9.2009, 09:39 |
| readelf -s имяфайла.so | awk '{print $8}' |
| Автор: MAKCim 6.9.2009, 09:43 |
| rthsobakas, написать самому не сложно /usr/include/elf.h |
| Автор: rthsobakas 6.9.2009, 10:13 |
| MAKCim, эээ. Не понял. Бонифаций, нормально. |
| Автор: MAKCim 6.9.2009, 10:17 |
найти таблицу экспортируемых символов парсингом elf файла получится кросслатфрменное решение |
| Автор: rthsobakas 6.9.2009, 10:19 |
| Бонифаций, а почему после print курсор перехдит на след строку? Нельзя ли его оставить на этой же. Причем \r не помогает. Добавлено через 1 минуту и 54 секунды MAKCim, я хз как это сделать |
| Автор: bilbobagginz 6.9.2009, 10:33 |
| rthsobakas, я советовал использовать sed, а потом cut. вы использовали cat, а потом cut. cat output | sed -e 's/[[:space:]]\ */:/g' | cut -d: -f<зависит от проги, вывод к-рой будет использоваться> |
| Автор: rthsobakas 6.9.2009, 11:02 |
| bilbobagginz, да ладно... readelf -s имяфайла.so | awk '{print $8}' проще. Просто я понять не могу как сделать чтобы print не переносил на новую строку. |
| Автор: Бонифаций 6.9.2009, 13:25 |
| readelf -s имяфайла.so | awk '{printf "%s\t", $8}' |
| Автор: rthsobakas 6.9.2009, 14:00 |
| Бонифаций, ага разобрался. Или просто можно так readelf -s имяфайла.so | awk '{print "123", $8,"123","\n"}' То есть просто надо через запятую. |
| Автор: Bodro 1.10.2010, 14:41 | ||||
| Вариантов полно! Я так понимаю, нужно, чтобы на новую строку не переносился вывод? Вот два что попроще:
Ещё можно регулярками распарсить, используя sed или awk. Можно на Си или на другом языке прогу написать и т.п. |
| Автор: GrayCardinal 1.10.2010, 16:47 |
| Bodro, Оно тебе надо было такое старье поднимать ? |
| Автор: bilbobagginz 3.10.2010, 11:06 |
| не дает о себе забыть, некрофилия.... |
| Автор: A5uKa 3.11.2010, 09:26 |
| EDB |
| Автор: nanoo 12.11.2010, 15:55 |
| nm -D -C <.so> | grep ' T ' обрати внимание на пробелы до и после Т. это для экспортируемых ф-ий. для всех так nm -D -C <.so> | grep -i ' T ' |