Comprimir archivos es una forma fácil y eficaz de transferir datos entre ordenadores y servidores. Cuando los archivos están comprimidos, no sólo ahorran espacio en disco en una unidad local, sino que también facilitan y hacen más conveniente la descarga de archivos de Internet, utilizando mucho menos ancho de banda que el envío de archivos de tamaño completo.
Cuando usted recibe un archivo comprimido en Linux, descomprimirlo es igual de fácil. Hay muchos interruptores disponibles en Linux, lo que significa que tiene muchas maneras de extraer archivos con el comando unzip en la línea de comandos.
Índice de contenidos
Descomprimir archivos ZIP individuales
La sintaxis básica para descomprimir un archivo es:
descomprimir nombre de archivo
Por ejemplo, digamos que ha subido la cremallera de un álbum llamado Amenaza a la sobriedad . Para descomprimir este archivo en la carpeta actual, simplemente ejecute el siguiente comando:
unzip "Menace To Sobriety"
Descomprimir varios archivos ZIP
El comando man le permite descomprimir más de un archivo a la vez usando la siguiente sintaxis:
descomprimir nombre de archivo1 nombre de archivo2 nombre de archivo3
Si has comprimido tres archivos de álbumes de Alice Cooper llamados Trash , Hey Stoopid , y Dragontown , por separado, puedes intentarlo para descomprimirlos:
unzip "Trash.zip" "Dragontown.zip" "Hey Stoopid.zip"
Sin embargo, lo que obtendrías es este error:
Archivo: Trash.zip precaución: el nombre del archivo no coincide: Dragontown.zip
Asumiendo que los tres archivos viven en la misma carpeta, un mejor método es usar el siguiente comando:
unzip '*.zip'
Pero ten cuidado. Este comando es indiscriminado y descomprimirá todos los archivos ZIP de la carpeta actual.
Excluir algunos archivos ZIP
Si tiene un archivo ZIP y desea extraer todos los archivos excepto uno, utilice el parámetro -x .
descomprimir nombre de archivo.zip -x filetoexclude.zip
Para continuar con nuestro ejemplo, el álbum «Trash» en Trash.zip tiene un MP3 titulado Bed Of Nails . Para extraer todas las canciones excepto «Bed Of Nails», harías esto:
unzip Trash.zip -x "Bed Of Nails.mp3"
Extraer un archivo ZIP a un directorio diferente
Si desea colocar el contenido del archivo ZIP en un directorio diferente al actual, utilice el parámetro -d .
unzip nombrearchivo.zip -d ruta/al/extracto/al
Por ejemplo, para descomprimir el archivo Trash.zip a /home/music/Alice Cooper/Trash , utilice la siguiente sintaxis:
unzip Trash.zip -d "/home/music/Alice Cooper/Trash"
Cómo mostrar el contenido de un archivo comprimido comprimido Zip
Para listar el contenido de un archivo comprimido, utilice el parámetro -l .
unzip -l nombrearchivo.zip
En nuestro ejemplo, podríamos usar este parámetro para ver todos los archivos en Trash.zip .
unzip -l Trash.zip
La información devuelta incluye:
- Longitud en bytes
- Fecha de creación
- Hora de creación
- Nombre
Cómo probar si un archivo ZIP es válido
Para comprobar si un archivo ZIP está estructurado correctamente y puede utilizarse correctamente antes de extraerlo, utilice el parámetro -t .
descomprimir -t nombrearchivo.zip
Por ejemplo, para probar si Trash.zip es válido, puede ejecutar lo siguiente:
unzip -t Trash.zip
Cada archivo está listado, y OK debería aparecer junto a él. En la parte inferior de la salida debe aparecer un mensaje indicando que no se han detectado errores en los datos comprimidos de…. .
Consulte Información detallada sobre un archivo ZIP
El parámetro -v (verboso) puede dar información más detallada.
descomprimir -v nombre de archivo
Para usar este parámetro con Trash.zip para ver más información, escribiremos:
unzip -v Trash.zip
La salida contiene la siguiente información:
- Longitud en bytes
- Método
- Tamaño
- Porcentaje de compresión
- Fecha y hora de creación
- CRC
- Nombre
Descomprimir un archivo ZIP sin crear directorios
En el caso de los archivos ZIP que tienen carpetas, la ejecución de descomprimir sola, sin interruptores, volvería a crear la misma estructura de carpetas desde el archivo comprimido.
Por ejemplo, si se extrae el nombre de archivo1.zip , que tiene las siguientes tres carpetas, se extraen las mismas carpetas:
<DIV