Equivalente de memmove em arquivos: copie um intervalo de bytes para uma posição anterior

3

O que é um equivalente de memmove em arquivos com o mesmo arquivo de entrada e saída, que funciona com arquivos grandes?

dd funciona quando eu movo o conteúdo do arquivo para a direita, mas não se eu mover o conteúdo para a esquerda, já que não há manipulação de sobreposição.

ddrescue tem uma cópia inversa, mas se recusa a trabalhar na mesma entrada & arquivo de saída.

    
por simonzack 21.03.2014 / 09:07

1 resposta

0

beav é um editor binário visual com comandos semelhantes a emacs que podem editar arquivos binários. A sequência que você usaria para mover um bloco seria executada nas seguintes linhas:

  • encontre o início do bloco e marque ESC .
  • ir para o final do bloco e apagar-marca-para-cursor (conteúdo armazenado em kill-buffer) CTRL - W
  • vá para onde você deseja mover o bloco e pressione CTRL Y
  • arquivo-save CTRL - X CTRL S
  • sai CTRL - X CTRL C

Aqui está a descrição do pacote Debian beav .

Extrair

With beav, you can edit a file in HEX, ASCII, EBCDIC, OCTAL, DECIMAL, and BINARY. You can display but not edit data in FLOAT mode. You can search or search and replace in any of these modes. Data can be displayed in BYTE, WORD, or DOUBLE WORD formats. While displaying WORDS or DOUBLE WORDS the data can be displayed in INTEL's or MOTOROLA's byte ordering. Data of any length can be inserted at any point in the file. The source of this data can be the keyboard, another buffer, or a file. Any data that is being displayed can be sent to a printer in the displayed format. Files that are bigger than memory can be handled.

    
por 21.03.2014 / 10:37

Tags