dd conv=notrunc if=good_header of=corrupted_file
A opção conv=notrunc
é essencial aqui.
Eu tenho um arquivo grande (binário) que tem alguma corrupção perto do começo.
Então, eu tenho um segundo arquivo menor que eu obtenho começando a baixar o mesmo arquivo novamente, mas interrompo depois que eu tenho bytes suficientes para consertar o original.
Minha pergunta é: como eu simplesmente sobrescrevo o início do arquivo grande com o conteúdo do segundo arquivo menor? Eu poderia usar cat
, tail
e head
, mas isso criaria uma cópia do arquivo. Deve haver uma maneira mais eficiente.
Ah, sim, e estou procurando uma solução de linha de comando do Linux, se isso não fosse óbvio. Estou usando o bash, mas tenho outros shells se isso ajudar.
Tags command-line bash linux