Вот одна строка из необработанного дампа USB:
Id Type Time Length Hex Ascii
16 Out (USB URB Function: 45) 0.01513 2048 a3 e8 55 cc correpondant ascii
Обратите внимание, что Id, Type, Time, Length все время меняются, и что количество шестнадцатеричных байтов действительно огромно.
Что я хочу сделать, это стереть все, кроме шестнадцатеричных байтов.Я думал об использовании sed для замены всего, что не было парой цифр / [букв от A до F] и между двумя пробелами:
sed -E 's/([^ ][^a-f0-9][^a-f0-9][^ ])//g' <orig >new
Но это дает мне следующее:
1Uun) 0.015013 2048 a3 e8 55 cc
и только некоторые части ascii стерты.
Я попробовал некоторые другие команды sed, основанные на приведенной выше, но она тоже не работает.
Есть идеи?Спасибо.