objective-c 바이너리의 모든 셀렉터를 반복 처리 (또는 카운트) 할 수있는 도구/스크립트가 있습니까? 정적으로 객관적인 c 바이너리를 분석하고 그 메트릭을 얻고 싶습니다. 나는 otool -tV
을 시도했지만 모든 덤프는 16 진수 데이터로 분석 할 수 없습니다. 어떤 사람들은 lldb
을 사용하라고 제안하지만 어떻게해야할지 확신이 없습니다.objective-c 바이너리의 셀렉터 수를 계산합니다
0
A
답변
1
이 같은 선택기를 모두 인쇄 할 수 있습니다
$ objdump -section=__objc_selrefs -macho /Applications/Xcode.app/Contents/Frameworks/IBFoundation.framework/IBFoundation
/Applications/Xcode.app/Contents/Frameworks/IBFoundation.framework/IBFoundation:
Contents of (__DATA,__objc_selrefs) section
000000000016a808 __TEXT:__objc_methname:init
000000000016a810 __TEXT:__objc_methname:copy
000000000016a818 __TEXT:__objc_methname:array
000000000016a820 __TEXT:__objc_methname:dictionary
000000000016a828 __TEXT:__objc_methname:addObject:
000000000016a830 __TEXT:__objc_methname:setObject:forKey:
000000000016a838 __TEXT:__objc_methname:appendString:
000000000016a840 __TEXT:__objc_methname:allKeys
...
당신이 화장실에 두 개의 헤더 행 및 파이프 나머지를 grep으로,이를 계산하려면 :
$ objdump -section=__objc_selrefs -macho /Applications/Xcode.app/Contents/Frameworks/IBFoundation.framework/IBFoundation | grep ^'[0-9a-f]' | wc -l
1668
1
또 다른 도구는 objdump
입니다. otool
의 후계자입니다. 실행하려면 xcrun objdump
을 사용해야 할 수도 있으며, 인수는 -help
입니다. 예를 들어 다음과 같이 시도하십시오.
xcrun objdump -macho -objc-meta-data <binary> | grep "name 0x"
당신이 쫓고있는 것에 가까워 질 수 있습니다.
관련 문제
- 1. jquery가있는 셀렉터 수를 확인하십시오.
- 2. 파일의 줄 수를 계산합니다.
- 3. 함수의 모음 수를 계산합니다.
- 4. 스택의 프레임 수를 계산합니다.
- 5. 목록에서 공백 수를 계산합니다.
- 6. 특정 요소 수를 계산합니다.
- 7. MongoObservable.Collection에서 문서 수를 계산합니다.
- 8. 매월 작업 수를 계산합니다.
- 9. daterange에서 주 수를 계산합니다
- 10. 배열의 요소 수를 계산합니다.
- 11. 프롤로그의 원자 수를 계산합니다.
- 12. 계산 항목 수를 기준으로 페이지 수를 계산합니다.
- 13. Android는 동적으로 열 수를 계산합니다.
- 14. SiteCatalyst에서 버튼 클릭 수를 계산합니다.
- 15. OpenCV - 검정 픽셀 수를 계산합니다.
- 16. OpenCV 가로선의 픽셀 수를 계산합니다.
- 17. XCode의 URL에있는 파일 수를 계산합니다.
- 18. JSON의 총 개체 수를 계산합니다.
- 19. Powershell이 파일의 열 수를 계산합니다.
- 20. 문자열의 특정 문자 수를 계산합니다.
- 21. Perl 연결의 패킷 수를 계산합니다.
- 22. MySQL의 DISTINCT 행 수를 계산합니다.
- 23. 단어 목록에있는 문자의 수를 계산합니다.
- 24. 프롤로그에서 반복되는 단어 수를 계산합니다.
- 25. pandas.loc 검색의 결과 수를 계산합니다.
- 26. Cakephp querybuilder의 행 수를 계산합니다.
- 27. 주어진 문자열의 요소 수를 계산합니다.
- 28. 목록의 문자 수를 계산합니다. 파이썬
- 29. 개체 배열에있는 값의 수를 계산합니다.
- 30. 어셈블리 파일의 명령어 수를 계산합니다.