我正在调查ELF文件中的一些对象并使用readelf来实现此目的。
此readelf示例显示第3列上对象的大小(字节),
在大型物体上,readelf以十六进制打印…
试试这个:
readelf -sW target.elf | perl -pe 's/(?m)^(?:\S+[ ]+){2}\K(0x)?[0-9a-f]{5,}/hex $&/ge' | sort -k 3 -n -r
这仅适用于第三列。
正则表达式:
(?m) # Multi-line mode ^ # BOL (?: \S+ [ ]+ ){2} # First 2 columns \K # Disregard columns up to here # Third column only ( 0x )? # (1) [0-9a-f]{5,}