Cómo dividir un archivo grande en varios más pequeños (y reunirlos de nuevo)

Supongamos que hemos hecho una copia de seguridad y ha salido un tarball demasiado grande para grabarlo en un CD (ej: 1 GB). Es muy fácil dividirlo en dos (y reunirlos de nuevo formando el archivo original, cuando sea necesario).

I. Dividir el archivo con ‘split’

Ésta (split) es una herramienta de línea de órdene que vine incluída en cualquier distribución de linux:

Por ejemplo, para que quepa en un CD de 700 MB CDs, hay que hacer esto:

    split -b 725000000 archivo.tgz

Esto divide el archivo indicado en varios archivos del tamaño indicado (en este caso 725 millones de bytes, ~700 MB) – salvo el fichero que contenga la última parte del archivo dividido, obviamente.
En nuestro caso, obtendríamos dos ficheros: ‘xaa’ (de 700 MB) y ‘xbb’, de unos 300.

II. Recuperar el archivo original uniendo los ficheros ‘xaa’ y ‘xbb’

Cuando queramos recuperar el archivo original, sólo tendremos que concatenarlos; para empezar, copia el primer fragmento del tarball (por ejemplo, a miTarball.tgz).

    cp xaa miTarball.tgz

Para los ficheros siguientes, usamos cat para añadirlos al final del archivo anterior:

    cat xab >> miTarball.tgz

¡Y ya está! El proceso no tiene mayor dificultad🙂

1 Comment »

  1. 1
    danubuntu Says:

    En realidad, se podrían reunir todos los archivos con una sóla orden:

    # cat xaa xab > archivo.tgz

    Hay que tener cuidado de introducir los nombres ordenados, pues cat los irá concatenando según el orden en que aparezcan.

    Además, se puede especificar el tamaño en unidades distintas a los bytes (ej: k para kilobytes):

    # split -b 1024k archivo.tgz

    Para más información, simplemente hay que consultar man split.

    Like


RSS Feed for this entry

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: