Truncar um arquivo em um determinado padrão

5

Como eu faria para truncar um arquivo binário quando um determinado padrão fosse encontrado?

Por exemplo, quero truncar o arquivo na primeira ocorrência do padrão 0xFFFFFFFF .

Acho que algo como awk poderia fazer o truque ... mas não sei exatamente como.

obrigado

    
por nico 01.03.2011 / 10:57

2 respostas

5

Converta para octal e atribua ao separador de registro.

awk 'BEGIN{RS="7777"} NR==1 {print;exit}'
    
por 01.03.2011 / 13:53
1

Tenho certeza de que é possível usar o Perl quando você faz o seguinte

  • use a opção de linha de comando -0777 para ingerir toda a entrada de uma só vez
  • usa codificação do Latin-1
  • use s/\xFF\xFF\xFF\xFF.*//s

Eu fiz algo assim há muito tempo, mas não me lembro mais das opções. Para o awk eu não tenho ideia.

    
por 01.03.2011 / 12:37

Tags