有没有一种通用的方法来检查二进制文件(可以是 ELF、Dwarf、PE 等)的平台(32 位/64 位)和架构(powerpc、arm 等)?
我知道几乎每个文件(elf 或 pe)都有一个标头,说明哪个体系结构可以执行它,但是有没有一种通用的方法可以从所有二进制文件中获取这些信息?
我尝试使用返回所有这些信息的魔法,但它以字符串形式返回 -
ELF 64-bit LSB executable, x86-64,ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib/ld.so.0, stripped
现在,我正在使用正则表达式从中提取信息,但我不确定是否总是可以依靠它,因为魔法的字符串输出可能不同。