2009/3/10 Gmail <[email protected]>: > boas pessoal > > Tenho um arquivo em hexadecimal com esta formatação > > 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 AA CC > 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 BA CC > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 CA CC > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 AA CC > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 CA AB > 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 AA DD > 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 BA DD > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 CA DD > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 AA DD > 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 BA CD > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 CA EF > 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 BA 15 > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 CA 20 >
A visão de um arquivo em hexadecimal não possui o conceito de "linhas" nem de "formatação". Estes caracteres são ASCII ou são binários? Vou considerar que são binários pois você disse "arquivo em hexadecimal". > Eu preciso mover para outros arquivos solo as blocos entre as linhas com > o bit 19 e em este exemplo AA > Parece-me que você quer os bytes (e não bits) 1 ao 80 no primeiro arquivo e 101 a 180 no segundo arquivo? > arquivo primeiro > 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 AA CC > 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 BA CC > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 CA CC > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 AA CC > > arquivo segundo > 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 AA DD > 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 BA DD > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 CA DD > 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 01 02 AA DD > > Testei com varias formas do sed, mais não solucionei, alguma ajuda? > cut -c1-80 arquivo > arquivo-primeiro cut -c100-180 arquivo > arquivo-segundo para evitar a quebra de linha gerada pelo cut (0a) echo $(cut -c1-80 arquivo) > arquivo-primeiro echo $(cut -c100-180 arquivo) > arquivo-segundo -- Reinaldo de Carvalho http://korreio.sf.net http://python-cyrus.sf.net
