Saltar al contenido

¿Cómo comprimir archivos con un límite de tamaño?

Nuestros investigadores estrellas han agotado sus reservas de café, en su búsqueda a tiempo completo por la resolución, hasta que Miriam encontró el hallazgo en GitHub por lo tanto hoy la compartimos contigo.

Solución:

Solución 1:

Puedes usar el “archivo dividido“funcionalidad de”Código Postal” mismo usando el “–tamaño dividido” opción.

Desde la página de manual “zip” (“man zip“):

(…)

Un uso de los archivos divididos es almacenar un archivo grande en varias ubicaciones
medios capaces. Para un archivo dividido con 20 archivos divididos, los archivos se tipifican
Nombre icicamente (reemplazar ARCHIVO con el nombre de su archivo) AR‐
CHIVE.z01, ARCHIVO.z02, …, ARCHIVO.z19, ARCHIVO.zip. Tenga en cuenta que el
El último archivo es el archivo .zip.

(…)

-s tamaño dividido
–tamaño dividido tamaño dividido

El tamaño de división es un número seguido opcionalmente por un multiplicador.
Actualmente el número debe ser un número entero. El multiplicador puede
ser actualmente uno de k (kilobytes), m (megabytes), g (gigabytes),
o t (terabytes). Como 64k es el tamaño mínimo de división, los números
sin multiplicadores por defecto a megabytes. Por ejemplo, para crear
comió un archivo dividido llamado foo con el contenido de la barra
directorio con divisiones de 670 MB que pueden ser útiles para grabar
en CD, el comando:

                zip -s 670m -r foo bar

puede ser usado.

Asi que, para crear un archivo zip divididopodría hacer lo siguiente (el “-r” es el interruptor “recursivo” para incluir subdirectorios del directorio):

$ zip -r -s 10m archive.zip directory/

Para descomprimir el archivola “zipLa página de manual explica que debe usar el interruptor “-s 0`”:

(…)

 zip -s 0 split.zip --out unsplit.zip

convertirá un archivo dividido en un archivo de un solo archivo.

(…)

Entonces, tú primero “desdividir” el archivo ZIP usando el interruptor “-s 0”:

$ zip -s 0 archive.zip --out unsplit.zip

… y luego tu descomprima el archivo sin dividir:

$ unzip unsplit.zip

Solución 2:

tar -czvf - /path/to/files | split -b 10M - archive.tar.gz

Le dará una serie de archivos:

archive.tar.gzaa

archive.tar.gzab

...

Que luego se puede descomprimir con:

cat archive.tar.* | tar -xzvf -

Solución 3:

Así es como lo hice para un archivo de 5 GB (dividido en 1 GB frente a 10 MB según lo solicitado por OP)…

Ejemplo: para dividir un archivo de 5GB dentro archivos de 1GB para copiar a un USB FAT32 (nombre de archivo “FIVE_GB_FILE.ISO”)

Paso 1: comprimir el archivo (sin compresión, mismo directorio que la fuente)

zip -0 FIVE_GB_FILE.ZIP FIVE_GB_FILE.ISO

Paso 2: divide el archivo zip de 5 GB en archivos zip de 1 GB

zip -s 1000m SPLIT_5GB_FILES FIVE_GB_FILE.ZIP

Listo… deberías tener los siguientes archivos de 1GB (Y el original, Y el zip del paso 1)

SPLIT_5GB_FILES.zip
SPLIT_5GB_FILES.Z01
SPLIT_5GB_FILES.Z02
SPLIT_5GB_FILES.Z03
SPLIT_5GB_FILES.Z04

Valoraciones y reseñas

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *