Linux / Comando split: dividir archivos por líneas o tamaño
split divide archivos grandes en varios archivos fragmentados según el tamaño o el número de filas especificado. Se utiliza cuando se desea dividir archivos para cumplir con límites de transferencia o crear unidades de procesamiento por lotes.
Por defecto, split crea fragmentos de 1000 líneas con nombres como xaa: x es el prefijo y aa el sufijo. También puede dividir datos binarios por bytes y reconstruirlos al concatenar los fragmentos en el orden original. Elija un prefijo sin conflictos con archivos existentes.
Sintaxis básica
split [opciones] [archivo_de_entrada [prefijo_de_salida]]
La implementación instalada y las opciones pueden variar según la distribución. Verifique la descripción de man split en el sistema actual.
Ejemplos de uso
División por número de filas
Se guarda en archivos separados cada 500 filas.
split -l 500 data.txt part-
División por tamaño
Se crean fragmentos de hasta 100 MiB.
split -b 100M archive.bin archive-part-
Recombinación en orden
Verifique el orden de clasificación de los nombres de los fragmentos y luego únalos.
cat archive-part-* > archive-restored.bin
Verificar los archivos generados después de la división
El siguiente comando divide cuatro líneas en dos líneas cada una. Se crearán part-aa y part-ab en el directorio actual, así que pruébelo en un directorio de trabajo vacío.
printf 'a\nb\nc\nd\n' | split -l 2 - part-
cat part-aa
cat part-ab
Ejemplo mostrando el contenido de ambos archivos en orden:
a
b
c
d
split por sí mismo no imprime el nombre del archivo. Si ya existe un archivo con el mismo nombre, se puede sobrescribir, así que configure un prefijo único. Para recombinar en el orden original, liste los archivos en el orden correcto usando cat part-* > archivo_restaurado y verifique el tamaño o la suma de verificación del resultado restaurado.
Opciones y formatos principales
| Opciones·Formato | Descripción |
|---|---|
-l N |
Inserte N líneas en cada archivo. |
-b tamaño |
Especifique el tamaño máximo en bytes de cada fragmento. |
-d |
Use sufijos numéricos. |
-a N |
Especifique la longitud del sufijo como N caracteres. |
--additional-suffix=texto |
Se agrega una cadena adicional al final del nombre del archivo dividido. |
Precauciones al usar
split -b también puede cortar en medio de una línea de texto. Para preservar la línea, consulte el comportamiento de -l o GNU -C. Al unir los fragmentos, conviene seleccionar solamente los archivos con ese prefijo y compararlos con el original mediante un hash.
Preguntas frecuentes
¿Se elimina el archivo original al dividirlo con split?
No. El archivo de entrada permanece intacto y se crean nuevos archivos fragmentados.
Documentación oficial
Puede verificar el comportamiento exacto de las opciones y las diferencias según la implementación en la documentación oficial de split.




