Cómo comprimir y descomprimir archivos con comandos en Windows

Última actualización: 10/09/2025
Autor: Isaac
  • Compact y tar permiten comprimir y extraer desde CMD en Windows con control fino de parámetros.
  • Windows 11 amplía el soporte nativo de formatos; para archivos cifrados, usa 7-Zip o WinRAR.
  • Alternativas: 7-Zip, PeaZip, WinRAR, WinZip y servicios online para convertir o extraer.

comprimir y descomprimir con comandos en windows

Cuando trabajas con muchos ficheros, dominar la consola de Windows para comprimir y extraer archivos te ahorra tiempo y clics. Además, permite automatizar tareas repetitivas con scripts que funcionan igual cada vez y en cualquier equipo de tu entorno.

En esta guía completamente práctica reunimos todo lo que necesitas: el comando nativo compact, el uso de tar en el Símbolo del sistema, opciones en Windows 10 y Windows 11, un ejemplo de script con WinZip, utilidades como 7-Zip o PeaZip y, si te hace falta, servicios online para salir del paso. Todo explicado con ejemplos de uso y parámetros clave.

Acceder a la línea de comandos en Windows 10 y Windows 11

En Windows 10 puedes abrir rápidamente la consola pulsando el botón Inicio y buscando «Símbolo del sistema» o «CMD»; al ejecutarlo verás el intérprete de comandos listo para recibir órdenes.

En Windows 11 es muy cómodo hacer clic derecho sobre el botón Inicio y elegir Símbolo del sistema/Terminal/PowerShell. Con eso obtienes una ventana preparada para introducir los comandos que verás a continuación.

compact: comprimir y descomprimir archivos NTFS desde CMD

El comando compact trabaja con la compresión a nivel de sistema de archivos NTFS. Es ideal para reducir el tamaño en disco de archivos y carpetas ya existentes sin crear ficheros .zip o .tar. Te permite actuar por directorios, subdirectorios y mediante patrones.

Comprimir el contenido de una carpeta concreta

Supongamos que guardas imágenes en Documentos\fotos. Lo habitual es situarte antes en la ruta para simplificar. Por ejemplo, navega con cd y ejecuta:

cd Documents
compact /c /s:fotos

Aquí usamos dos modificadores: /c (comprimir) y /s:directorio (recursivo). El proceso listará cada elemento que comprime. Si el resumen te muestra 13 elementos pero solo ves 12 líneas, no te alarmes: la propia carpeta cuenta como elemento; además, el total puede incluir archivos en el directorio padre y en subcarpetas.

Comprimir solo algunos ficheros mediante comodines

Si te interesa un subconjunto, puedes aplicar un patrón. Por ejemplo, para ficheros cuyo nombre termina en 1 dentro de fotos:

compact /c /s:fotos *1.jpg

Al terminar, verás que solo los archivos coincidentes han sido marcados como comprimidos. En el Explorador de archivos se reflejará mediante el icono informativo de compresión NTFS.

Comprimir únicamente la carpeta actual (sin subdirectorios)

Si no quieres recorrer subcarpetas, muévete a la carpeta destino y ejecuta compact sin el modificador /s. Por ejemplo, entra en fotos y aplica:

cd fotos
compact /c

También puedes combinar con patrones dentro del directorio actual: para afectar a ficheros concretos sin tocar el resto:

compact /c *1.jpg

Descomprimir con compact

Para revertir la compresión NTFS usa /u (uncompress). Descomprimir recursivamente fotos quedaría así:

compact /u /s:fotos

El resultado te mostrará cuántos archivos y directorios han sido procesados. Recuerda que el directorio raíz también se contabiliza aunque no aparezca como una línea independiente.

  Windows 11 no detecta el HDMI: guía completa para recuperar la señal

tar en Windows: trabajar con .tar, .tar.gz, .tgz y .gz desde CMD

Windows incluye tar en la línea de comandos, por lo que puedes crear y extraer tarballs sin instalar nada extra. Es perfecto para empaquetar directorios completos o gestionar archivos procedentes de entornos UNIX.

Comprimir (crear) un archivo .tar.gz

Para crear un archivo comprimido con gzip (tar.gz) que contenga un fichero o carpeta, usa -c (crear), -z (gzip), -v (verbose) y -f (archivo): esta combinación es muy habitual.

tar -czvf archivo_comprimido.tar.gz archivo_o_directorio

Por ejemplo, para comprimir documento.txt: generará documento_comprimido.tar.gz con el contenido empaquetado.

tar -czvf documento_comprimido.tar.gz documento.txt

Descomprimir (extraer) un .tar.gz

Para extraer, sustituye -c por -x (extraer) y mantiene -zvf para reconocer gzip y mostrar el progreso. La opción -f indica el archivo origen:

tar -xzvf archivo_comprimido.tar.gz

También puedes especificar destino con -C: asegúrate de que la carpeta existe para evitar errores del tipo «tar: could not chdir to ‘C:\ruta'».

tar -xvzf C:\prueba.tar -C C:\prueba

Soporte nativo de formatos en Windows 11

Windows 11 ha ampliado la compatibilidad con formatos de archivo: puedes trabajar con .tar, .7-zip, .rar y .gz desde el sistema, con menús contextuales más completos. Eso reduce la necesidad de instalar utilidades externas para tareas básicas. En versiones recientes (24H2), además se indica que las operaciones sobre archivos cifrados no están admitidas: si el archivo está protegido, usa 7-Zip o WinRAR.

En el menú contextual, los usuarios pueden comprimir y descomprimir desde el Explorador con un par de clics. Es una mejora clara en experiencia de usuario, aunque si necesitas automatización o flujos avanzados, la línea de comandos sigue siendo la opción más flexible.

Script por lotes con WinZip (wzzip.exe)

Si tienes WinZip instalado, puedes automatizar compresiones con un archivo BAT. El siguiente ejemplo define variables y llama a wzzip con parámetros para añadir recursivamente:

@echo off
set ZIP_EXE="C:\Program Files\WinZip\wzzip.exe"
set ARCHIVO_ZIP="nombre_deseado.zip"
set CARPETA_A_COMPRIMIR="C:\ruta\a\tu\carpeta"
"%ZIP_EXE%" -a -r "%ARCHIVO_ZIP%" "%CARPETA_A_COMPRIMIR%"

Qué hace cada parte: @echo off limpia la salida; ZIP_EXE establece la ruta al ejecutable; ARCHIVO_ZIP fija el nombre del ZIP; CARPETA_A_COMPRIMIR define qué carpeta empaquetar; la llamada final ejecuta WinZip con -a (añadir/crear) y -r (recursivo) para incluir subdirectorios.

  Windows 10 8.1 7: Solución completa a los problemas de sonido

Herramientas de terceros en Windows (GUI y CLI)

Aunque esta guía se centra en la consola, es útil conocer gestores de archivos comprimidos adicionales. Te pueden sacar de apuros con formatos menos comunes o archivos grandes.

PeaZip

PeaZip soporta cerca de 200 formatos y permite crear .tar, .gz y .tar.gz entre muchos otros. Para comprimir abre PeaZip y añade los ficheros desde el programa o con clic derecho en el Explorador. Después, elige GZip si quieres tar.gz o TAR para agrupar sin compresión; confirma con Aceptar.

Para extraer, haz clic derecho sobre el archivo y elige PeaZip > Extract here, o usa Extract… para seleccionar una ruta concreta. También puedes abrir el archivo como contenedor para ver su contenido antes de extraer.

7-Zip

Para descomprimir, clic derecho > 7-Zip > Extraer aquí, o Extraer ficheros… para definir el destino. También permite abrir como archivo para inspeccionar el contenido antes de extraer.

WinRAR

WinRAR maneja RAR, ZIP, CAB, ARJ, LZH, TAR, GZ, UUE, BZ2, JAR, ISO, Z y 7Z, entre otros. Desde Opciones > Settings > Integración puedes asociar extensiones. Para extraer, clic derecho > Extract files y elige ubicación. Ofrece cifrado, nivel de compresión configurable y división por volúmenes. Recuerda que es shareware con 40 días de prueba.

WinZip

WinZip también trabaja con .tar, .tar.gz, .tgz y .gz. Puedes extraer con el clic derecho eligiendo «Descomprimir a…» o abrir el archivo con WinZip y usar el panel lateral para definir la carpeta de destino. Es una opción clásica y sencilla para usuarios que ya lo tienen instalado.

B1 Free Archiver

Compatible con B1, ZIP, JAR, XPI, RAR, 7Z, ARJ, BZ2, CAB, DEB, GZIP, TGZ, ISO, LZH, LHA, LZMA, RPM, XAR, DMG y más. Funciona en Windows, Linux y macOS, soporta ficheros protegidos y ofrece cifrado AES-256. Es totalmente gratuito y se descarga desde su web.

ZIP y UNZIP en terminal (Linux/WSL) y usos prácticos

El trabajo con ZIP por línea de comandos es multiplataforma: si usas WSL en Windows, o trabajas en Linux, puedes instalar zip y unzip desde el gestor de paquetes. En Debian/Ubuntu:

sudo apt-get install zip
# o
sudo apt install zip

En distribuciones con yum, instala igual de fácil: con privilegios de administrador o sudo según tu configuración:

sudo yum install zip

Comprimir con zip

Para comprimir un solo archivo: creará destino.zip con el fichero dentro:

zip ARCHIVO_COMPRIMIDO_DESTINO.zip ARCHIVO_A_COMPRIMIR

Ejemplos típicos para carpetas: añade -r para compresión recursiva de subdirectorios. En el directorio actual:

zip -r destino.zip

O apuntando a una carpeta concreta: útil para empaquetar proyectos completos:

zip -r destino.zip directorio_a_comprimir

Si necesitas más control, zip admite opciones como -q (silencioso), -e (cifrar), -u (actualizar) o -m (mover, eliminando el original al añadirlo). Para no comprimir (solo archivar), existe el nivel -0 (compresión cero).

  Cómo insertar imágenes, archivos y notas de voz en OneNote

Descomprimir con unzip

La extracción básica es directa: se descomprime en el directorio actual:

unzip archivo.zip

Para consultar el contenido sin extraer: lista de ficheros, tamaño y fechas:

unzip -l archivo.zip

Para extraer en otra ruta, añade -d: crea la estructura en la carpeta elegida:

unzip archivo.zip -d /ruta/a/destino

O extrae solo un archivo concreto del ZIP: ideal para recuperar un único recurso:

unzip archivo.zip file1.txt

Más sobre tar y gzip: opciones útiles

tar admite varios motores de compresión además de gzip. Combina -f con otras opciones para crear, listar o extraer según necesites.

Crear un tar simple (sin compresión): empaqueta múltiples ficheros en un solo contenedor:

tar -cvf archivo.tar archivo1 archivo2

Crear con gzip (tar.gz o tgz) desde un directorio: verás cada fichero mientras se procesa:

tar -czvf archivo.tar.gz directorio/

Extraer un tar sin compresión: deja los archivos en la carpeta actual:

tar -xvf archivo.tar

Listar el contenido de un tar sin extraer: útil para inspeccionar antes de actuar:

tar -tvf archivo.tar

Otros motores: -j (bzip2) genera .tar.bz2 y -J (xz) genera .tar.xz, escogiendo el equilibrio entre nivel de compresión y velocidad.

gzip para archivos sueltos

gzip comprime ficheros individuales y sustituye el original por nombre.gz. Para conservar el original añade -k:

gzip ejemplo.txt      # produce ejemplo.txt.gz
gzip -k ejemplo.txt  # conserva ejemplo.txt

Para descomprimir: usa -d o el comando gunzip equivalente:

gzip -d ejemplo.txt.gz
# o
gunzip ejemplo.txt.gz

También puedes comprimir varios de una vez o redirigir la salida con -c: útil en pipelines:

gzip archivo1.txt archivo2.txt archivo3.txt
gzip -c archivo.txt > archivo.txt.gz

Controla el equilibrio de rendimiento con -9 (máxima compresión) o deja el valor por defecto. Para directorios completos, combina gzip con tar tal y como se ha visto en los ejemplos anteriores.

zip
Artículo relacionado:
Cómo descomprimir archivos ZIP desde la línea de comandos en Windows paso a paso