Tutorial del comando zip de Linux para principiantes (5 ejemplos)

Como su nombre indica, el comando zip permite crear archivos. En este tutorial, vamos a discutir los fundamentos de zip utilizando algunos ejemplos fáciles de entender. Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos aquí han sido probados en una máquina Ubuntu 18.04 LTS.

Comando zip de Linux

La línea de comandos zip de Linux le permite empaquetar y comprimir (archivar) archivos. A continuación se muestra su sintaxis:

zip archive_name list_of_files

Y así es como la página man de la herramienta lo explica:

zip is a compression and file packaging utility for Unix, VMS, MSDOS, OS/2, Windows 9x/NT/XP, 
Minix, Atari, Macintosh, Amiga, and Acorn RISC OS.
It is analogous to a combination of the Unix commands tar(1) and compress(1) and is compatible
with PKZIP (Phil Katz's ZIP for MSDOS systems).

A continuación se presentan algunos ejemplos de estilo Q&A que deberían darle una mejor idea de cómo funciona el comando zip.

Q1. ¿Cómo se utiliza el comando zip?

El uso básico es bastante fácil – sólo tiene que proporcionar el nombre del archivo zip y los archivos a comprimir como entrada. Aquí hay un ejemplo:

zip files.zip file1.txt file2.txt file3.txt

Así que la idea detrás de este comando es comprimir los tres archivos .txt en un archivo .zip. Esta es la salida que produjo este comando:

adding: file1.txt (stored 0%)
adding: file2.txt (stored 0%)
adding: file3.txt (stored 0%)

Y se produjo un archivo llamado ‘files.zip’ en el directorio de trabajo actual.

Q2. ¿Cómo eliminar un fichero de un archivo (comprimido)?

Esto se puede hacer utilizando la opción de línea de comandos -d. Por ejemplo, para eliminar el archivo3.txt del archivo files.zip, ejecuté el comando zip de la siguiente manera:

zip -d files.zip file3.txt

La herramienta me notificó la operación de borrado a través del siguiente mensaje:

deleting: file3.txt

Q3. ¿Cómo añadir nuevos ficheros a un archivo comprimido existente?

Al igual que la operación de borrado se realiza a través de -d, en caso de querer añadir nuevos ficheros a un archivo comprimido existente, se puede hacer utilizando la opción de línea de comandos -u.

Aquí tienes un ejemplo:

zip -u files.zip file3.txt file4.txt

Aquí tienes los mensajes que este comando produjo en la salida:

adding: file3.txt (stored 0%)
adding: file4.txt (stored 0%)

Q4. ¿Cómo hacer que zip elimine los archivos originales después de archivarlos?

Por defecto, los archivos originales no se eliminan incluso después de que zip cree un archivo comprimido. Sin embargo, si lo desea, puede forzar a la herramienta a eliminar los archivos originales. Esto se puede hacer utilizando la opción de línea de comandos -m.

Aquí hay un ejemplo:

zip -m files.zip file1.txt file2.txt file3.txt file4.txt

Este comando creó files.zip en la salida mientras que eliminó todos los archivos .txt en el proceso.

Q5. ¿Cuáles son otras opciones útiles del comando zip?

Una opción de la línea de comandos que probablemente necesitará es -x. Se utiliza cuando se quiere dejar algunos archivos de ser comprimido. Así que lo que tienes que hacer es especificar -x seguido del nombre del archivo comprimido seguido de los nombres de los archivos que quieres excluir.

Por ejemplo:

zip files.zip file2.txt

Este comando comprimirá todos los archivos presentes en el directorio de trabajo actual, excepto el archivo2.txt.

Continuando, la otra opción de línea de comandos que puedes necesitar es -r. Te permite comprimir de forma recursiva, algo que es necesario cuando quieres comprimir directorios (incluyendo, por supuesto, su contenido).

Conclusión

Aquí sólo hemos arañado la superficie, ya que el comando zip también ofrece muchas otras funciones. Una vez que haya terminado de practicar los ejemplos que hemos discutido aquí, puede dirigirse a la página man de la herramienta para aprender más sobre ella.

Tutorial del comando zip de Linux para principiantes (5 ejemplos)