Ejemplos prácticos del comando Descomprimir en Linux

Si tiene un archivo comprimido zip, puede descomprimirlo en la línea de comandos de Linux. El comando descomprimir en Linux es bastante versátil y puede usarlo para mucho más que simplemente extraer un archivo zip.

He discutido cómo comprimir una carpeta en Linux en el pasado. Es hora de ver varios usos del comando descomprimir. Antes de hacer eso, asegúrese de que se haya instalado el descompresor en su sistema. Puede usar el administrador de paquetes de su distribución para instalar el comando.

En Ubuntu y Debian, puede usar este comando:

sudo apt install unzip

Una vez que haya verificado eso, veamos cómo usar la descompresión en la terminal de Linux.

Descomprimir comando en Linux

El comando descomprimir tiene una sintaxis realmente simple:

unzip [option] zip_file

Si lo usa para extraer un archivo zip sin ninguna opción, extraerá todos los archivos en el directorio actual:

unzip webdesign.zip 
Archive:  webdesign.zip
  inflating: 339252-PAJF05-394.ai    
  inflating: 339252-PAJF07-322.eps   
  inflating: 339252-PALBTI-224.ai    
  inflating: 339252-PALBTL-394.eps   
  inflating: 339252-PALBTM-53.jpg    
  inflating: License free.txt        
  inflating: License premium.txt

Y eso no es lo que querrías la mayor parte del tiempo. Simplemente inundará su directorio actual con todos los archivos extraídos.

ls
 339252-PAJF05-394.ai    339252-PALBTI-224.ai    339252-PALBTM-53.jpg  'License premium.txt'
 339252-PAJF07-322.eps   339252-PALBTL-394.eps  'License free.txt'      webdesign.zip

1. Descomprimir en un directorio

El comportamiento esperado es que debe tener los archivos extraídos en un directorio determinado, normalmente con el mismo nombre que el archivo zip.

Puede especificar el directorio de destino donde desea extraer los archivos.

unzip -d target_directory zip_file

Si el directorio de destino no existe, se creará. Sin embargo, no puede crear directorios anidados de esta manera.

Tenga en cuenta que también puede colocar el directorio de destino al final, pero no todas las opciones se pueden agregar al final.

unzip zip_file -d target_directory

2. Ver el contenido del archivo zip sin extraer

Si desea ver qué contiene el archivo zip, no siempre tiene que extraerlo primero. Puedes usar el -l opción y mostrará el contenido del archivo zip.

unzip -l zip_file

Como puede ver, también muestra la marca de tiempo de los archivos y el tamaño real de los archivos individuales en bytes.

[email protected]:$ unzip -l webdesign.zip 
Archive:  webdesign.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
   205358  2018-06-18 23:14   339252-PAJF05-394.ai
   996906  2018-06-18 23:14   339252-PAJF07-322.eps
   213968  2018-06-20 00:00   339252-PALBTI-224.ai
  1005362  2018-06-20 00:00   339252-PALBTL-394.eps
   305531  2018-06-20 00:00   339252-PALBTM-53.jpg
     1462  2018-06-20 09:45   License free.txt
     1116  2018-06-20 09:45   License premium.txt
---------                     -------
  2729703                     7 files

Si lo desea, puede obtener más información, como el tamaño comprimido, la relación de compresión utilizando el modo detallado con -v opción. El CRC-32 en la salida es el verificación de redundancia cíclica.

[email protected]:$ unzip -v webdesign.zip 
Archive:  webdesign.zip
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
  205358  Defl:N   142097  31% 2018-06-18 23:14 792f2380  339252-PAJF05-394.ai
  996906  Defl:N   221228  78% 2018-06-18 23:14 440390d3  339252-PAJF07-322.eps
  213968  Defl:N   147568  31% 2018-06-20 00:00 cdb64dfc  339252-PALBTI-224.ai
 1005362  Defl:N   226727  77% 2018-06-20 00:00 aed3d97a  339252-PALBTL-394.eps
  305531  Defl:N   183363  40% 2018-06-20 00:00 e4ced90f  339252-PALBTM-53.jpg
    1462  Defl:N      728  50% 2018-06-20 09:45 0eb9e17b  License free.txt
    1116  Defl:N      558  50% 2018-06-20 09:45 165dd84e  License premium.txt
--------          -------  ---                            -------
 2729703           922269  66%                            7 files

3. Sobrescribir todos los archivos sin preguntar

Si ya hay archivos con el mismo nombre en el directorio donde está extrayendo los archivos, será ascendido por cada uno de esos archivos. Puede forzar sobrescribir todos los archivos con la opción -o.

unzip -o -d target_directory zip_file

4. No sobrescriba ningún archivo -n

Si no desea que los archivos recién extraídos sobrescriban ningún archivo existente, use la opción -n (que significa nunca sobrescribir).

unzip -n -d target_directory zip_file

5. Actualizar archivos y crear si es necesario

Esto es ligeramente diferente a sobrescribir todos los archivos. En este caso, solo se sobrescribirán aquellos archivos que tengan una marca de tiempo más reciente que los archivos existentes. Si un archivo no existe, se creará.

Puedes lograr eso con la opción -u:

unzip -u -d target_directory zip_file

6. Actualice los archivos existentes pero no cree ninguno

Ligero cambio respecto al anterior. example aquí. En este, actualizará los archivos existentes si tienen una marca de tiempo anterior, pero no creará ningún archivo nuevo, incluso si no existen.

La opción -f te permite hacer eso:

unzip -f -d target_directory zip_file

7. Extraer en modo silencioso

Cuando descomprime un archivo, muestra todos los archivos que se han extraído en la pantalla. Ahora imagina un archivo zip que tiene cientos de archivos. Si lo extrae, su pantalla se llenará de resultados.

Puede usar el modo silencioso con la opción -q y no verá nada en la pantalla:

unzip -q -d target_directory zip_file

8. Excluir archivos de la extracción

También puede excluir ciertos archivos o cierto tipo de archivos para que no se extraigan.

unzip zip_file -x file_to_exclude

En mi exampledigamos que no quiero extraer ningún archivo .eps.

[email protected]:$ unzip webdesign.zip -x *.eps
Archive:  webdesign.zip
  inflating: 339252-PAJF05-394.ai    
  inflating: 339252-PALBTI-224.ai    
  inflating: 339252-PALBTM-53.jpg   
  inflating: License free.txt        
  inflating: License premium.txt

Esos fueron algunos de los ejemplos más comunes del comando descomprimir en Linux. Siempre puede consultar su página de manual para conocer más opciones.

¿Usas alguna otra opción para descomprimir con frecuencia? ¿Por qué no compartirlo con nosotros en los comentarios?

Related Posts