Comando unzip en Linux: descomprimir archivos rapidamente

comando-unzip
comando-unzip

unzip lista, comprueba y extrae archivos de un paquete ZIP. Por defecto escribe los archivos en el directorio actual; si hay rutas dentro del archivo, también recrea esa estructura. Antes de extraer una descarga, conviene revisar qué contiene, verificar que los datos se leen y elegir una carpeta de destino.

unzip no crea archivos ZIP ni descomprime formatos como .tar.gz. Para generar paquetes, consulta la guía de zip; para archivos tar, usa tar.

👉 Y recuerda, si quieres aprender más de Linux, visita el curso de Linux gratis.

🐳 Si quieres aprender más de Docker, visita el curso de Docker gratis.

Sintaxis básica del comando unzip

Puedes extraer todo el archivo, seleccionar miembros concretos o indicar un directorio de salida:

unzip [OPCIONES] ARCHIVO.zip [MIEMBROS...] [-d DIRECTORIO]

Explicación de la sintaxis

ARCHIVO.zip identifica el paquete. MIEMBROS permite elegir nombres concretos que ya estén dentro del ZIP. -d DIRECTORIO selecciona dónde escribir lo extraído; si no lo indicas, se usa el directorio de trabajo actual. Las opciones controlan la lista, la prueba de integridad y el comportamiento si ya existe un archivo con el mismo nombre.

Opciones habituales de unzip

OpciónQué haceCuándo usarla
-lLista los nombres de los miembros sin extraerlos.Revisar el contenido antes de elegir qué recuperar.
-tLee los miembros y comprueba sus datos y CRC.Detectar un archivo incompleto o dañado antes de extraer.
-d DIRECTORIOExtrae en la carpeta indicada.Mantener separado el contenido del resto de archivos.
-nNo sobrescribe archivos que ya existen.Conservar los archivos locales y saltar los duplicados.
-oSobrescribe sin preguntar.Solo cuando el reemplazo sea intencionado y el archivo esté revisado.
-jDescarta las rutas y extrae todos los miembros en una sola carpeta.Recuperar unos pocos archivos; comprueba que no haya nombres repetidos.
-x PATRÓNExcluye miembros que coincidan con un patrón.Omitir archivos concretos al extraer.

Inspeccionar y probar antes de extraer

Empieza por listar las rutas y probar la integridad del archivo. Luego extrae en una carpeta separada y evita sobrescribir archivos existentes:

unzip -l proyecto.zip
unzip -t proyecto.zip
mkdir -p /tmp/proyecto-extraido
unzip -n proyecto.zip -d /tmp/proyecto-extraido

-l muestra las entradas; -t descomprime los datos en memoria y compara la comprobación CRC con la almacenada; -n protege los archivos que ya haya en el destino. Una prueba correcta confirma que los datos se pueden leer, pero no demuestra que cada archivo sea seguro ni que pertenezca a una fuente fiable.

Si el ZIP es grande, confirma también que tienes espacio suficiente. No ejecutes programas o scripts extraídos de una fuente desconocida sin revisar su origen y contenido.

Extraer solo algunos archivos

Primero mira la ruta exacta guardada en el archivo. Después indícala como miembro para extraer solo ese elemento:

unzip -l respaldo.zip
unzip respaldo.zip config/app.yml -d salida/

Los nombres de los miembros deben coincidir con las rutas que muestra la lista. Si el nombre incluye espacios o patrones, ponlo entre comillas para que el shell no lo expanda antes de que llegue a unzip.

Excluir rutas y controlar sobrescrituras

Puedes omitir patrones al extraer. Las comillas hacen que el patrón lo procese unzip; en este ejemplo se excluyen archivos de log y el contenido de la carpeta temporal:

unzip respaldo.zip -d salida/ -x '*.log' 'tmp/*'

Por defecto, unzip pregunta qué hacer cuando detecta un archivo existente. -n mantiene lo que ya está en el disco; -o reemplaza sin preguntar. Evita automatizar la sobrescritura hasta comprobar tanto el contenido del ZIP como el destino:

unzip -n respaldo.zip -d salida/
unzip -o respaldo.zip -d salida/

Elige una sola de esas estrategias según el caso. No ejecutes ambas seguidas: la segunda reemplaza archivos que la primera habría conservado.

Errores frecuentes al usar unzip

  • Se extrae en el lugar equivocado: sin -d, el destino es el directorio actual. Consulta tu ubicación o indica una carpeta explícita.
  • El archivo no se puede abrir: comprueba la ruta, el nombre y que la descarga haya terminado. Cambiar la extensión no convierte un formato en ZIP.
  • El archivo está dañado o incompleto: la prueba -t puede detectar errores de lectura o CRC; vuelve a obtener el archivo desde su fuente.
  • Se sobrescriben archivos locales: usa -n si no quieres reemplazarlos y extrae en una carpeta nueva para comparar resultados.
  • Quedan archivos antiguos en el destino: extraer un ZIP no limpia la carpeta de archivos que ya existían y no aparecen en el paquete.
  • El ZIP está cifrado: cuando se solicite, introduce la contraseña en el prompt; no la escribas en un comando que pueda quedar en el historial o en una lista de procesos.

Comandos relacionados

  • zip, para crear y actualizar archivos ZIP.
  • tar, para agrupar archivos y extraer paquetes tar.
  • gzip y gunzip, para comprimir y descomprimir archivos individuales.

Referencia

Consulta la página de manual de unzip en Debian para revisar las opciones disponibles en la versión instalada en tu sistema.

Vídeo: descomprimir un archivo ZIP

El siguiente Short muestra un ejemplo básico de extracción en Linux. Para revisar un archivo antes de recuperar sus datos, sigue los pasos de listado, prueba y destino separado de esta guía:

Comentarios

No hay comentarios aún. ¿Por qué no comienzas el debate?

Deja una respuesta

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