Это команда bbe, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
bbe - редактор бинарных блоков
СИНТАКСИС
BBE [кредита] ...
ОПИСАНИЕ
BBE - похожий на sed редактор для двоичных файлов. Он выполняет двоичные преобразования на
блоки входного потока.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
BBE принимает следующие варианты:
-b, --block =BLOCK / БЛОК
Определение блока.
-e, --expression =КОМАНДА
Добавьте КОМАНДУ к выполняемым командам.
-f, --file =скрипт-файл
Добавить в команды содержимое скрипт-файла.
-o, --output =имя
Записать вывод в имя вместо стандартного вывода.
-s, - подавить
Подавить нормальный вывод, печатать только содержимое блока.
-?, --Помогите
Перечислите все доступные варианты и их значения.
-V, --версия
Показать версию программы.
BLOCK / БЛОК можно определить как:
N: M Где N-й байт начинается M блок байтов (первый байт равен 0).
: M Длина блока во входном потоке составляет M.
/ начало /: M
строка Начало начинается M блок длиной в байты.
/ старт /: / стоп /
строка Начало начинает блок, а блок заканчивается строкой остановить.
/Начните/:
строка Начало запускает блок, и блок завершится при следующем появлении Начало, Только
первый Начало входит в блок.
:/останавливаться/
Блок начинается в начале входного потока (или в конце предыдущего блока) и
заканчивается при следующем появлении остановить. Нить остановить будет включен в блок.
Специальное значение "$" M означает конец потока.
Значение по умолчанию для блока - 0: $, что означает весь входной поток.
Оба формата Начало и остановить строки включены в блок. Непечатаемые символы могут быть экранированы
as
\ nnn десятичный
\ xnn шестнадцатеричный
\ 0nnn восьмеричный
Символ '\' может быть экранирован как '\\'. Коды выхода '\ a', '\ b', '\ t', '\ n', '\ v', '\ f', '\ r' и
'\;' также можно использовать.
Длина (N и M) можно определить как десятичное (n), шестнадцатеричное (xn) или восьмеричное (0n)
значения.
КОМАНДА СИНТАКСИС
BBE имеет два типа команд: блочные и байтовые, обе всегда связаны с текущим
блокировать. Это означает, что входной поток за пределами блоков остается нетронутым.
Заблокировать команды
Д [n] Удалить nблок. Без n, все найденные блоки удаляются из вывода
поток.
I string
Вставьте строку string перед блоком.
A string
Добавить строку string в конце блока.
J n Пропускать n блоков перед выполнением команд после этой команды.
L n Оставить все блоки без изменений, начиная с номера блока n. Влияет только на команды
после этой команды.
N Перед печатью блока печатается имя файла, в котором начинается блок.
F f Перед печатью блока смещение входного потока в начале блока равно
распечатаны. f может быть H, D или O для шестнадцатеричного, десятичного или восьмеричного формата смещения.
B f Перед печатью блока печатается номер блока (первый блок == 1) f может быть H,
D или O для шестнадцатеричного, десятичного или восьмеричного формата номера блока.
> файл Перед печатью блока содержимое файла файл печатаются.
< файл После печати блока содержимое файла файл печатаются.
Байт команды
n в байтовых командах - это смещение от начала текущего блока (начинается с нуля).
r n string
Заменить байты, начиная с позиции n со строкой string.
i n string
Вставить string начиная с позиции n.
p формат
Содержимое блока печатается в формате, определяемом формат. формат может иметь любой
форматов H, D, O, A и B для шестнадцатеричного, десятичного, восьмеричного, ascii и двоичного.
s/по области применения/заменить/
Заменить все вхождения по области применения заменить.
y/источник/Dest/
Перевести байты в источник к соответствующим байтам в Dest. Источник и Dest должен
быть одинаковой длины.
d n m|*
Удалить m байты, начиная со смещения n. Если * определено вместо m, то все
байты, начиная с n удалены.
c к в
Преобразование байтов из формата к в в. В настоящее время поддерживаются следующие форматы:
BCD Десятичное число с двоичным кодом
ASC Ascii
j n Команды после j-команды сначала игнорируются n байтов блока.
l n Команды после l-команды игнорируются из n-й байт блока.
w файл Записать байты из текущего блока в файл файл. Команды до w-command имеют
что будет написано. % B или% nB в файл будет заменен текущим номером блока.
n в% nB - длина поля, ведущий ноль в n приводит к тому, что номер блока остается
дополнены нулями.
& c Выполняет бинарный и c.
| c Выполняет бинарный or c.
^ c Выполняет бинарный исключающее c.
~ Выполняет двоичное отрицание.
u n c Все байты от начала блока до смещения n заменены на c.
f n c Все байты, начиная с смещения n до конца блока заменяются на c.
x Обменять содержимое полубайтами (половиной октета) байтов.
Невидимые символы в строках можно экранировать так же, как в строках определения блока.
Символ '/' в командах s и y может быть любым видимым символом.
Обратите внимание, что команды D, A, I, F, B, c, s, i, y, p, <,> и d определяют длину ввода
и выходные потоки должны быть разными.
ПРИМЕРЫ
bbe -e "s / c: \\ temp \\ data1.txt / c: \\ temp \\ data2.txt /" file1
все вхождения «c: \ temp \ data1.txt» в файл file1 заменяются на
"c: \ temp \ data2.txt"
bbe -b 0420: 16 -e "r 4 \ x12 \ x4a" файл1
Два байта, начиная с пятого байта 16-байтового блока, начиная со смещения 0420
(восьмеричный) в file1 заменяются на шестнадцатеричные значения 12 и 4a.
bbe -b: 16 -e "A \ x0a" файл1
Новая строка добавляется после каждого блока, длина блока - 16.
Используйте bbe в Интернете с помощью сервисов onworks.net