Hoy tuve que eliminar los primeros 1131 bytes de un archivo mixto de texto / binario de 800 MB, un volcado de subversión filtrado que estoy pirateando para un nuevo repositorio. ¿Cuál es la mejor manera de hacer esto?
Para empezar intenté
dd bs=1 skip=1131 if=filtered.dump of=trimmed.dump
pero después del salto, esto copia el resto del archivo un byte a la vez, es decir, muy lentamente. Al final trabajé, necesitaba 405 bytes para redondear esto a tres bloques de 512 que podía omitir.
dd if=/dev/zero of=405zeros bs=1 count=405
cat 405zeros filtered.dump | dd bs=512 skip=3 of=trimmed.dump
que se completó bastante rápido, pero debe haber habido una manera más simple / mejor? ¿Hay alguna otra herramienta que haya olvidado? ¡Gracias!
dd
es la herramienta adecuada para el trabajo: parece que se le ocurrió una solución agradable y elegante para su problema.