Dados de teste binário 1GB, discutidos aqui , são criados por
dd if=/dev/urandom of=sample.bin bs=64M count=16
Divisão por posição de byte
Por favor, veja o tópico sobre este aqui . Eu acho que esta é a maneira mais apropriada de fazer a divisão se o byte offset for corrigido. Você precisa determinar os locais dos dois primeiros cabeçalhos de eventos e contar o tamanho do evento. Considere também a cauda do último cabeçalho do evento para saber quando terminar a divisão.
xxd
A resposta está no comentário do FloHimself.
xxd -ps sample.bin | process | xxd -ps -r
od -v
Em od -v
, deve-se especificar o formato de saída como o seguinte, com base no comentário de StephenKitt
od -v -t x1 sample.bin
dando
0334260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0334540
que é mais fácil de manusear.
Comentário sobre a passagem pelo canal Ascii em vez de hexadecimal / oitava
Acho que a conversão de binário para hexadecimal e de volta para binário é suficiente em xxd -ps
.
Eu fiz base64 sample.bin | less -s -M +Gg
, mas notei um processamento e uma saída significativamente mais lentos como este
CGgUAMA0GCSqGSIb3DQEBAQUABIIBABR2EFj76BigPN+jzlGvk9g3rYrHiPKNIjKGprJMaB91ATT6gc0Rs3xlEr6Ybzm8NVcxMnR+2chto/oSh85ExuH4Lk8mELHOIZLeAUUr8eFAXKnZ4SBZ6a8Ewr0x/zX09Bp6IMk18bdVUCT15PT2fbluvJfj7htWCDy0ewm+eU2LIJgkriK8AA0oarqjjK/CIhfglQutfN6QDEp4zqc6tJVqUO7XrEsFlGDOgcPTzeWJuWx31/8MrvEn5HcPzhq+nMI1D6NYjzGhHN08//ObF3z3zthlCDVmowbV161i2LhQ0jy9a/TNyAM0juCR0IF9j7zSyFW0/vvMZYdt5kg1J1EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA