Tengo un archivo de 100 GB y quiero dividirlo en 100 archivos de 1 GB cada uno (por salto de línea)
p.ej
split --bytes=1024M /path/to/input /path/to/output
Para los 100 archivos generados, quiero aplicar gzip / zip a cada uno de estos archivos.
¿Es posible usar un solo comando?

--line-bytes=1024M.Respuestas:
Utilice "--filtro":
split --bytes=1024M --filter='gzip > $FILE.gz' /path/to/input /path/to/outputfuente
Una línea con un condicional es lo más cerca que puede acercarse.
gzipsolo se ejecutará sisplites exitoso debido al condicional&&que también está entrecdysplitasegurándose de que tambiéncdsea exitoso. Tenga en cuenta esosplitygzipenvíe al directorio actual en lugar de tener la capacidad de especificar el directorio de salida. Puede hacer el directorio, si es necesario:Para volver a armar todo:
fuente
El uso de este comando con
-dopción le permite generar sufijos numéricos.Archivos generados:
fuente