Cargando



Comandos para comprimir y descomprimir ZIP archivos en Linux

Tutorial con vídeo para poder comprimir o descomprimir archivos ZIP con comandos desde sistemas Linux.


may 17 2019 12:25
Avanzado
Total de Apartados : 15
may 27 2019 14:04

Muchas veces habrás notado que requieres enviar diversos archivos al tiempo o usarlos en otros equipos pero no deseas copiar todos los elementos ya que esto pude suponer un desorden visual o el tamaño de éstos no está dentro de los rangos establecidos por el programa.

 

Para ello, no debes preocuparte ya que existe una solución desde hace varias décadas y es nada más y nada menos que usar la compresión ZIP para esto. Es cierto que la compresión ayuda a disminuir el tamaño original de los archivos pero podemos ir mucho más allá de esto y establecer medidas de seguridad como contraseñas, excluir archivos y más tareas que pueden llegar a ser de gran utilidad en tus labores diarias.

 

Los archivos que llevan la extensión .zip hacen referencia a archivos que contienen dentro de sí diversos objetos con el propósito de optimizar al máximo su tamaño y movilidad. Su funcionamiento básicamente consiste en reducir el número total de bits y bytes de un archivo y así facilitar el envío de éste a través de conexiones de Internet lentas o bien ocupar menos espacio en el disco duro.

 

Aprende cómo instalar y comprimir archivos o carpetas con ZIP añadiendo contraseña para sistemas Linux.

 

Ahora bien, en ambientes Linux es natural usar archivos comprimidos con las extensiones .tar.gz y tar.bz2 pero como trabajamos con más personas, estas pueden enviarnos algún archivo .zip para trabajar en conjunto y por ello es más que necesario aprender a administrar y usar este tipo de archivos en Linux. Así siempre estaremos un paso por delante de los problemas que se puedan generar.

 

Por defecto en los sistemas operativos basados en UNIX, como es el caso de Linux, encontramos integradas las funciones zip (compresión) y unzip (descompresión) para estas tareas. Pero para agregar más posibilidades, disponemos de otras funciones como zipcloak, zipdetails, zipsplit y zipinfo las cuales veremos más adelante y entenderemos que rol cumplen dentro de Linux.

 

Instalaciones distribuciones
Las funciones de zip están por defecto en distribuciones como Ubuntu 19.04, 18.10 y 18.04 pero si usas Fedora 29 debes instalarlas con el siguiente comando:
sudo dnf install perl-IO-Compress
Si usas CentOS 7 debes ejecutar:
sudo yum install perl-IO-Compress

 

 

Listo, hemos hablado lo suficiente de la compresión y ahora es momento de ver en acción como usar estas herramientas en Linux, para este caso usaremos Ubuntu 19.04.

 

Para estar al día, recuerda suscribirte a nuestro canal de YouTube!
SUSCRIBETE EN YOUTUBE

 

 


1. Cómo crear un archivo zip en Linux


Esta es la tarea principal que hay que realizar.

 

Paso 1

Para este caso debemos asignar el nombre del archivo a comprimir (no se requiere agregar la extensión .zip) y los archivos que estarán comprimidos, para esto iremos al directorio deseado, en este ejemplo Escritorio, y vamos a ejecutar lo siguiente:
zip Solvetic *.txt
Paso 2

En este ejemplo se creará el archivo comprimido Solvetic con todos los archivos de texto en el escritorio, podemos añadir las demás extensiones de los elementos disponibles, por ejemplo:
zip Solvetic *.txt *.docx

1-Cómo-crear-un-archivo-zip-en-Linux.png

 

 

Paso 3

Allí visualizaremos los archivos que han sido añadidos al archivo comprimido y este será creado en el mismo directorio:

 

2-Cómo-crear-un-archivo-zip-en-Linux.png

 

 

Paso 4

Un punto a tener en cuenta es que si trabajamos con múltiples archivos de diversos tamaños, este comando desplegará el nombre del archivo así como la cantidad de compresión asociada en cada archivo:

 

3-Cómo-crear-un-archivo-zip-en-Linux.png

 

Paso 5

Para visualizar los detalles del archivo comprimido creado ejecutamos:
ls -l Solvetic.zip

4-Cómo-crear-un-archivo-zip-en-Linux.png

 

Paso 6

Allí encontramos detalles como:
  • Permisos asignados
  • Usuario que creó el archivo
  • Fecha y hora de la tarea y más

 

Paso 7

Algunos usuarios desearán no ver la salida con los archivos que se añadieron al comprimido, esto porque pueden ser demasiados, para omitir la salida con los resultados, añadiremos el parámetro -q (quiet) así:
zip -q Solvetic *.txt

5-Cómo-crear-un-archivo-zip-en-Linux.png

 

 


2. Cómo agregar directorios o subdirectorios en un archivo comprimido en Linux

 

Es normal que cuando trabajamos en un directorio este contenga muchos más subdirectorios que deseamos añadir, pero no siempre el objetivo es agregarlos todos.

 

Paso 1

El comando zip nos permite incluir subdirectorios en el archivo creado usando la opción -r (recursive) e indicar el nombre del subdirectorio, para este caso iremos al directorio /etc y añadiremos al comprimido todos los archivos cuya extensión sea .conf pero adicional a ello vamos a añadir el subdirectorio pm, para esto ejecutamos lo siguiente en la terminal.
zip -r -q Solvetic pm/ *.conf
Paso 2

Vemos que se añadieron los archivos .conf y el subdirectorio indicado.

 

 

 

 

 

6-Cómo-agregar-directorios-o-subdirectorios-en-un-archivo-comprimido-en-Linux.png

 

 


3. Cómo configurar el nivel de compresión de un archivo en Linux


Al crear un archivo comprimido su base es justamente esa, la compresión, en Linux podemos usar un rango de 0 a 9, donde el valor 0 hace referencia a que no se usará ningún tipo de compresión y 9 obviamente la mayor compresión, debes entender que entre mayor sea la compresión el proceso de creación del archivo zip será más demorado, así que si tu virtud no es la paciencia usa un valor bajo.
Por defecto en Linux el valor establecido de compresión es 6.

 

Paso 1

Por ejemplo, si deseamos crear un archivo sin compresión ejecutaremos:
zip -0 -r -q Solvetic *.txt

7-Cómo-agregar-directorios-o-subdirectorios-en-un-archivo-comprimido-en-Linux.png

 

 

Paso 2

En caso de desear implementar la máxima compresión usaremos lo siguiente.
Es importante especificar el rango de compresión a usar en el comando anterior.
La diferencia entre no usar la compresión (nivel 0) y la compresión predeterminada (nivel 6) es de 400K mientras que la diferencia entre la compresión por defecto y el nivel más alto de compresión es de 4K.
zip -9 -r -q Solvetic *.txt

8-Cómo-agregar-directorios-o-subdirectorios-en-un-archivo-comprimido-en-Linux.png

 

 


4. Cómo agregar una contraseña a un archivo comprimido en Linux


Llegamos a uno de los puntos más sensibles ya que entra en juego la seguridad de los archivos que serán comprimidos, hablamos de la posibilidad de añadir una contraseña a los archivos zip en Linux.

 

Paso 1

Para esto simplemente se debe añadir el parámetro -e (encrypt) a la línea en la terminal de la siguiente manera:
zip -e -r -q Solvetic *.txt
Paso 2

Al pulsar Enter debemos ingresar y confirmar la contraseña:

 

 

 

 

9-Cómo-agregar-directorios-o-subdirectorios-en-un-archivo-comprimido-en-Linux.png

 

 

Paso 3

Una vez asignada, en el momento en que deseemos extraer el contenido del archivo zip veremos lo siguiente. Si no contamos con la contraseña correcta será complejo acceder a la información del archivo comprimido.

 

10-contraseña-en-comprimidos-linux.png

 

 


5. Cómo extraer un archivo comprimido en Linux

 

Paso 1

Otra de las tareas naturales en este tipo de tareas es extraer los archivos que han sido comprimidos, para ello debemos usar el comando unzip con el nombre del archivo comprimido así. Allí podemos ver que archivos han sido extraídos y es importante aclarar que los archivos ZIP no despliegan detalles acerca de la propiedad del archivo, por defecto todos los archivos que extraemos son asignados con el propietario configurado que está ejecutando la tarea de extracción.
unzip Solvetic.zip

11-Cómo-extraer-un-archivo-comprimido-en-Linux.png

 

 

Paso 2

Si no deseamos ver los archivos que se descomprimen podemos usar la opción -q (quiet):
unzip -q Solvetic.zip

6. Cómo extraer los archivos en un directorio en Linux


Paso 1

Una de las opciones útiles de la compresión y descompresión en Linux es que podemos redireccionar los archivos comprimidos a un nuevo directorio, esto ayudará a tener un orden y una mejor presentación visual de estos, para ello usaremos el parámetro -d (directory), en este caso vamos a crear una nueva carpeta llamada Documentos donde serán extraídos los archivos:
unzip -q Solvetic.zip -d ./Documentos

12-Cómo-extraer-un-archivo-comprimido-en-Linux.png

 

 

Paso 2

Como resultado de esta acción veremos los archivos que han sido descomprimidos en esta nueva carpeta creada automáticamente:

 

 

 


7. Cómo extraer la contraseña de un archivo comprimido en Linux

 

Paso 1

Cuando se ha creado un archivo protegido con contraseña, al momento de usar el comando unzip junto con el parámetro -q, debemos ingresar la contraseña asignada, si esta es incorrecta veremos lo siguiente:

 

14-Cómo-extraer-la-contraseña-de-un-archivo-comprimido-en-Linux.png

 

 

Paso 2

Pero si ingresamos la contraseña correcta el resultado será el siguiente:

 

15-Cómo-extraer-la-contraseña-de-un-archivo-comprimido-en-Linux.png

 

 

Nota
Si estamos en un entorno seguro donde otros pueden ver la contraseña o nosotros mismos por si llegásemos a olvidarla, podemos almacenarla en el sistema usando el parámetro -P de la siguiente forma:
unzip -P “contraseña” -q Solvetic.zip

 


8. Cómo excluir archivos de la descompresión en Linux


Muchas veces cuando comprimimos un archivo usando zip en Linux podemos alojar archivos multimedia como imágenes, música, etc, archivos del sistema o archivos de ofimática como docx, odt, etc, pero en el proceso de descompresión se cuenta con la posibilidad de excluir determinadas extensiones y liberar solo las deseadas

 

Paso 1

Por ejemplo en este caso tenemos archivos .txt y .docx:

 

16-.-Cómo-excluir-archivos-de-la-descompresión-en-Linux.png

 

 

Paso 2

En primer lugar añadiremos todos estos archivos en un comprimido:
zip Solvetic *.txt *.docx

17--Cómo-excluir-archivos-de-la-descompresión-en-Linux.png

 

 

Paso 3

Ahora vamos a extraer los archivos de texto (.txt) únicamente, para ello ejecutamos:
unzip -q Solvetic.zip -x *.docx

18-extraer-los-archivos-de-texto--linux.png

 

 

Paso 4

Como resultado veremos que solo se han extraído los archivos de texto:

 

19-extraer-los-archivos-de-texto--en-linux.png

 

 


9. Cómo sobrescribir archivos en Linux

 

Paso 1

Cuando extraemos un archivo comprimido en Linux, si alguno de los archivos llegase a existir, veremos el siguiente mensaje:

 

20-Cómo-sobrescribir-archivos-en-Linux.png

 

 

Paso 2

Las opciones son:

 

Yes
Permite sobrescribir el archivo
y: Yes

 

No
Sobrescribe el archivo dejando el original
no: No

 

A
Sobrescribe todos los archivos
A: All

 

 

None
No sobrescribe ninguno de los archivos disponibles
N: None

 

Rename
Esta opción extrae el archivo pero será necesario asignar un nuevo nombre
r: Rename

 

 

Paso 2

Si deseamos forzar a que todos los archivos sean sobrescritos, usaremos el parámetro -o así:
unzip -o -q Solvetic.zip

21-Cómo-sobrescribir-archivos-en-Linux.png

 

 


10. Cómo buscar un texto dentro de un archivo comprimido en Linux

 

Paso 1

Esta opción nos dará la oportunidad de buscar un determinado archivo o texto dentro del archivo comprimido, para ello usaremos la línea -l (list archive) de la siguiente manera:
unzip -l Solvetic.zip | les
Paso 2

Veremos lo siguiente:

 

 

 

 

22-Cómo-buscar-un-texto-dentro-de-un-archivo-comprimido-en-Linux.png

 

 

Paso 3

Allí encontramos detalles como:
  • largo de cada archivo
  • Fecha y hora de edición
  • Nombre del archivo

 


11. Cómo agregar una contraseña a un archivo comprimido en Linux

 

Paso 1

Es muy útil, créenos, ya que aplica cuando por alguna razón hemos olvidado la contraseña del archivo zip en Linux, en este tipo de situaciones entra en juego el comando zipcloak, para esto vamos a ejecutar lo siguiente:
Zipcloak Solvetic1.zip
Paso 2

Este comando solicitará que ingresemos y confirmemos una nueva contraseña para el archivo seleccionado:

 

 

 

 

23-Cómo-buscar-un-texto-dentro-de-un-archivo-comprimido-en-Linux.png

 

 


12. Cómo ver los detalles de un archivo comprimido en Linux

 

Paso 1

Otra de las funciones integradas en Linux para el uso de los archivos comprimidos es zipdetails la cual como su nombre lo indica nos dará detalles específicos del contenido, usaremos la siguiente línea:
zipdetails Solvetic.zip | les

24-Cómo-agregar-una-contraseña-a-un-archivo-comprimido-en-Linux.png

 

 

Paso 2

La información desplegada implica:
  • Encabezado del archivo
  • Método de compresión usado
  • Largo del archivo
  • Último acceso
  • Tamaño del UID
  • Largo de la compresión y mucha más información

 


13. Cómo buscar contenido en un archivo zip en Linux

 

Otra de las funciones útiles es la búsqueda de algún término dentro de un archivo comprimido, para ello usaremos la función zipgrep. Allí encontramos los archivos y el texto asociado a la búsqueda.

zipgrep Solvetic Solvetic.zip

25-Cómo-ver-los-detalles-de-un-archivo-comprimido-en-Linux.png

 

 


14. Cómo acceder a la información del archivo zip en Linux

 

Paso 1

Es práctico cuando deseamos ver información detallada del archivo comprimido, en este caso debemos echar mano del comando zipinfo:
zipinfo Solvetic.zip | les

26-Cómo-acceder-a-la-información-del-archivo-zip-en-Linux.png

 

 

Paso 2

Encontramos detalles como:
  • Permisos de archivo
  • La versión de la herramienta usada para la creación del archivo ZIP.
  • Método de compresión
  • Tamaño del archivo original
  • Descriptor del archivo
  • Nombre de los objetos dentro del comprimido y más

 

Paso 3

El descriptor de archivo está compuesto por dos caracteres que son:

 

  • El primer carácter puede ser una "t" o una "b" la cual indica si es un archivo de texto o binario, en caso de ser una letra mayúscula, significa que el archivo está encriptado.
  • El segundo caracter representa el tipo de metadatos incluido para el archivo, las opciones son ninguno, un encabezado local extendido, un "campo adicional" o ambos.

 


15. Cómo dividir un archivo comprimido en Linux en Linux


Es ideal cuando requerimos modificar el tamaño del archivo creado, recordemos que existen ciertas limitaciones de tamaño al enviar un archivo, para reducir o establecer un nuevo tamaño usaremos la opción -n (tamaño) gracias a la cual será posible definir un tamaño máximo para los archivos ZIP ya sean nuevo o existentes.

 

Podemos ejecutar lo siguiente. Con esta orden, hemos definido el tamaño en máximo 100 KB.

zipsplit -n 102400 Solvetic1.zip

27-Cómo-dividir-un-archivo-comprimido-en-Linux-en-Linux.png

 

Gracias a los comandos zip y unzip (adicionando sus diversas funcionalidades), el trabajo para comprimir y descomprimir los archivos en Linux será una tarea realmente sencilla, funciona, segura y lo mejor de todo efectiva.

 

Tutorial de cómo podemos instalar y usar el comando 7z y 7zip para comprimir archivos desde la terminal en Ubuntu de Linux.


¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X