split

Categoria:

  • Sintaxis Básica
  • Opciones Comunes
    • -b, –bytes=SIZE
    • -l, –lines=NUMBER
    • -C, –line-bytes=SIZE
    • -d, –numeric-suffixes[=FROM]
    • –additional-suffix=SUFFIX
    • -n, –number=CHUNKS
    • -a, –suffix-length=N
    • -u, –unbuffered
    • –verbose
    • –filter=COMMAND
    • –help

El comando split en Linux es una herramienta útil para dividir archivos grandes en fragmentos más pequeños. Esto puede ser especialmente útil cuando necesitas compartir o transferir archivos grandes, o simplemente para manejar ficheros de manera más eficiente. A continuación te explico en detalle cómo usar el comando split con todas sus opciones disponibles.

Sintaxis Básica

Bash
split [opciones] archivo [prefijo]

Opciones Comunes

-b, --bytes=SIZE

Esta opción te permite dividir un archivo en fragmentos basados en su tamaño, especificando la cantidad de bytes por fragmento.
Bash
split -b 100M archivo_grande.bin fragmento_

-l, --lines=NUMBER

Fuerza la eliminación sin solicitar confirmación, omitiendo cualquier error.

Bash
rm -f directorio

-C, –line-bytes=SIZE

Divide el archivo manteniendo líneas completas pero limitando el tamaño de los fragmentos a un número máximo de bytes.

-d, --numeric-suffixes[=FROM]

Esta opción usa sufijos numéricos en lugar de los sufijos por defecto, que son letras. Puedes especificar opcionalmente desde qué número empezar.

Bash
split -d -b 100M archivo_grande.bin fragmento_

–additional-suffix=SUFFIX

Añade un sufijo adicional a cada fragmento.
Bash
split -b 100M archivo_grande.bin fragmento_ --additional-suffix=.part

-n, –number=CHUNKS

Divide el archivo en un número específico de fragmentos iguales.

Bash
split -n 4 archivo_grande.bin fragmento_

-a, --suffix-length=N

Por defecto, split utiliza un sufijo de 2 letras para los fragmentos (como aa, ab, etc.). Esta opción permite definir la longitud del sufijo.

Bash
split -a 3 -b 100M archivo_grande.bin fragmento_

-u, –unbuffered

Esta opción divide el archivo sin hacer uso del buffering, lo que puede afectar la velocidad de ejecución en algunos casos, pero asegura que los fragmentos sean escritos inmediatamente.

Bash
split -u -b 100M archivo_grande.bin fragmento_

–verbose

Esta opción muestra información detallada sobre el proceso de división.

Bash
split --verbose -b 100M archivo_grande.bin fragmento_

–filter=COMMAND

Aplica un filtro a cada fragmento antes de escribirlo. Esto te permite usar otros comandos para modificar el contenido de los fragmentos mientras se están generando.

Bash
split --filter='gzip > $FILE.gz' -b 100M archivo_grande.bin fragmento_

–help

Muestra la ayuda completa del comando split.





Bash
split --help

Recomponer los archivos divididos

Para recomponer los fragmentos generados con split, simplemente usa el comando cat para concatenar los fragmentos:

Bash
cat fragmento_* > archivo_recompuesto.bin
Este comando concatenará los fragmentos y generará un archivo igual al original.

Conclusión

El comando split es una herramienta versátil y poderosa en Linux para dividir archivos de gran tamaño en fragmentos más pequeños. Las múltiples opciones disponibles te permiten controlar con precisión cómo quieres que se dividan los archivos, desde especificar tamaños exactos de fragmentos hasta personalizar los sufijos y aplicar filtros adicionales.

Ya sea que necesites dividir archivos grandes para transferirlos, almacenarlos o procesarlos de manera más eficiente, split es una excelente solución. ¡Experimenta con las diferentes opciones y elige la que mejor se adapte a tus necesidades!