мне нужно выполнить следующие две команды для каждого файла в каталоге:Script раздеться секции из ELF бинарных файлов
A) Первая команда:
readelf -aW A_FILE | grep Machine
где A_FILE
это имя конкретного файла ,
Выход из первой команды выглядит примерно так:
Machine: <unknown>: 0xXXX
0xXXX
где есть некоторое шестнадцатеричное число.
B) Вторая команда
objcopy -I elf64-x86-64 -O elf64-x86-64 -R .source -R .llvmir -R .amdil --alt-machine-code=<Machine> A_FILE A_FILE.STRIPPED
где <Machine>
является шестнадцатеричное число из первой команды, и A_FILE.STRIPPED
это имя выходного файла из objcopy
. (STRIPPED
произвольно, может быть любым фрагментом текста)
Если '0x' быть включен во второй команде, или только шестнадцатеричные цифры, которые следуют? –
... Я также пытался обновить заголовок вопроса, чтобы быть немного менее «write-this-for-me!». и представлять то, что на самом деле скрипт * делает *, поскольку эта вещь, которую он делает, связана с разработкой, и поэтому актуальна. :) –
Большое спасибо, Чарльз. Да, '0x' должен быть включен во вторую команду. – Jacko