compresores_desde_la_terminal

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
compresores_desde_la_terminal [2024/02/01 18:02] peroncompresores_desde_la_terminal [2024/02/26 18:04] (actual) peron
Línea 1: Línea 1:
-====== Compresores desde la terminal ======+====== Comprimir y descomprimir desde la terminal ======
  
-Cada fichero ocupa una determinada cantidad de espacio en un dispositivo de almacenamiento. Los programas compresores utilizan distintos algoritmos a fin de reducir la cantidad de espacio requerido para almacenar la información.+Cada fichero ocupa espacio en un medio de almacenamiento.
  
-=====Comprimir===== +Existen programas //compresores// que - por medio de distintos //algoritmos de compresión// someten el contenido de un fichero a un de análisis computacional y eliminación de redundancias, con el fin de reducir el espacio que este ocupaba.
-La compresión somete a un proceso de análisis y eliminación de redundancias, que provoca que los ficheros ocupen menos espacio de almacenamiento. Hazlo especialmente para achicar los archivos para su transmisión o conservación definitiva.+
  
-Estos son algunos formatos convencionalesque guardan su utilidad.+Esto es especialmente útil para achicar el fichero para su transmisión o conservación definitiva. 
 + 
 +Los sistemas similares a [[Unix]] cuentan con varios de estos compresores, pues existen varios formatos comprimidos. Podrás manejarlos desde la [[terminal_de_computadora|consola]]operando casi siempre con opciiones muy similar: conservan una copia del fichero original y una comprimida con ''-k'' y descomprir con ''-d''. 
 + 
 +Los formatos comprimidos más comunes son:
  
 ====.gz==== ====.gz====
-Comprime __un único ''fichero.ext''__ con el programa **gzip** para generar un fichero ''.gz'' comprimido con una implementación libre del algoritmo LZW.+**GNU Zip** es un programa de compresión estándar de baja performance. Sólo es capaz de comprimir __un solo fichero__ 
 +==Compresión de .gz == 
 +Usa el programa **gzip** para comprimir ''fichero.ext''. Esto creará una copia comprimida con extensión ''.gz'':
  
 <code bash> <code bash>
Línea 15: Línea 20:
 </code> </code>
  
-> El sufijo ''-k'' indica conservar el ''fichero.ext'' original. Si omites este sufijo, gzip eliminará el original.+> El sufijo ''-k'' indica conservar el ''fichero.ext'' original. Si lo omites, gzip comprime el fichero en ''fichero.ext.gz''
 +== Descompresión de .gz== 
 +Usa **gzip** con el indicador ''-d'' para descomprimir un fichero ''.gz'':
  
-==== .bz2 ==== +<code bash> 
-Comprime __ficheros o directorios__ con el programa **bzip2** para generar un fichero ''.bz2'' (computacionalmente mucho más efectivo que gzip, aunque menos extendido y compatible).+gzip -d fichero.gz 
 +</code>
  
-<code bash>bzip2 -k fichero_o_directorio</code>+Si deseas leer el contenido de un fichero de texto comprimido en un ''.gz'', usa **zcat**:
  
-====.xz==== +<code bash>zcat fichero.gz | less</code>
-Comprime __ficheros binarios__ de manera mejorada gracias al programa **xz**. Generarán un fichero ''.xz''.+
  
-<code bash>xz -k fichero.ext</code> 
  
-====.tar.gz====+==== .bz2 ==== 
 +**bzip2** requiere mayor potencia de cómputo que GNU Zip pero comprime más efectivamente. Sin embargo, está menos extendido en otras plataformas.
  
-Si deseas comprimir __varios ficheros o directorios__, colócalos en un ''~/directorio'', empaquétalos en un fichero ''.tar'' y comprímelos con gzip (formando un fichero ''tar.gz'')+==Compresión de .bz2== 
 +Usa **bzip2** para comprimir __solo un fichero__ y generar un archivador ''.bz2''
 + 
 +<code bash>bzip2 -k fichero.ext</code> 
 +==Descompresión de .bz2== 
 +Usa **bzip2** con el sufijo ''-d'' para descomprime el fichero ''.bz2''.
  
 <code bash> <code bash>
-tar czvf archivocomprimido.tar.gz ~/directorio/*+bzip2 -d fichero.bz2
 </code> </code>
  
->Un fichero ''tar.gz'' que contiene un árbol de directorios con código fuente de un programa - un uso común de tar.gz - recibe el el apodo de "tarball".+Si sólo deseas leer el contenido de un fichero de texto comprimido con ''.bz2'', usa **bzcat**:
  
-====.tar.xz==== +<code bash>bzcat fichero.bz2 | less</code>
-Es similar al tar.gz, pero se especifica para programas binarios, los cuales comprime mejor gracias al protocolo **xz**: +
-<code bash>tar -cJf programa.tar.xz fichero_binario</code>+
  
-====.zip==== +====.xz==== 
-Los ''.zip''/''.ZIP'' son ficheros empaquetado comprimido con el popular protocolo privativo **PKZip**.  +La compresión más extrema (de menor velocidad) la logra el compresor **xz**. 
-Puedes comprimir varios ficheros o directorios y generar un ''ficherocomprimido.zip'' usando una implementación el protocolo **PKWare Zip**.+==Compresión de .xz== 
 +Con el programa **xz** podrás comprimir __un solo fichero__; esto generará un fichero ''.xz''.
  
-<code bash>zip fichero_comprimido.zip fichero1 fichero2 fichero3</code>+<code bash>xz -k fichero.ext</code>
  
-o también comprimir un directorio (con los ficheros y subdirectorios que contenga):+==Descompresión de .xz== 
 +Decomprime un ''fichero.xz'' con:
  
-<code bash>zip -r fichero_comprimido.zip directorio</code>+<code bash>xz -d fichero.xz</code>
  
->A pesar de que el protocolo PKware ZIP está muy extendido en todo tipo de plataformas, no contempla ciertos atributos especiales utilizados en los sistemas tipo UNIX (posesión de los archivos, ciertos permisos, etc). Por tal motivo el método recomendado en UNIX es usar [[compresores#tar.gz||tar.gz]]. 
  
 +==== .tar ====
 +El programa **tar** se usa para crear un //archivador// ''.tar'', un fichero concebido para contener varios ficheros e incluso directorios, encadenándolos binariamente uno tras otro.
  
-===== Descomprimir ===== +>Originalmente estaba pensado para almacenar este fichero archivado en un medio de almacenamiento secuencial, como un carrete de cinta magnética (en una era donde la cinta era el principal medio de almacenamiento de masa).
-Puedes generar una copia descomprimida de los contenidos de los ficheros.+
  
-==== .gz ==== +==Archivar en .tar== 
-Descomprime un fichero ''.gz'' utilizando el comando **gzip** con el indicador ''-d'' (descomprimir) o bien el comando **gunzip**, (realmente un enlace a gzip, por si nos falla la memoria).+Archiva todos los ficheros contenidos de un ''directorio'' con tar: 
 +<code bash>tar cvf archivoempaquetado.tar directorio/*</code> 
 + 
 +==Desarchivar un .tar== 
 +Extrae el contenido de un fichero ''.tar''
 + 
 +<code bash>tar xvf archivoempaquetado.tar</code> 
 + 
 +====Comprimir archivadores .tar==== 
 +Si bien es posible crear un archivador ''.tar'' y comprimirlo en dos pasos, **tar** contempla la compresión y descompresión directa del archivador en un único paso: 
 + 
 +===.tar.gz=== 
 + 
 +==Comprimir un archivador .tar.gz== 
 +Si no lo has hecho, coloca los ficheros que desees en un ''~/directorio'', y [[#archivar en tar|archívalo en un fichero ''.tar'']], y comprímelo con **gzip**.  
 + 
 +Archiva __varios ficheros o directorios__ y comprímelos con gzip, creando un archivo ''tar.gz''
  
 <code bash> <code bash>
-gunzip fichero.gz +tar czvf archivocomprimido.tar.gz ~/directorio/*
-gzip -d fichero.gz+
 </code> </code>
  
-Si en lugar de descomprimir el contenido de un fichero .gz sólo deseas leerlo, puedes usar **zcat**:+>Un archivo ''tar.gz'' que contiene un árbol de directorios con código fuente de un programa - un uso común de este tipo de ficheros - recibe el el apodo de "tarball".
  
-<code bash>zcat fichero.gz | less</code>+==Descomprimir un archivador .tar.gz== 
 +Descomprime con gzip y extrae el contenido del archivador comprimido ''.tar.gz'' (en ocasiones puede aparecer como ''.tgz'' en Windows):
  
-==== .tar ==== +<code bash>tar xvzf archivo.tar.gz</code>
-Los ficheros ''.tar'' se //empaquetan// mediante el comando **tar**, el cual está pensado para encadenar varios ficheros en uno solo (binariamente, uno tras otro). +
  
->Originalmente estaba pensado para almacenar este empaquetado en un carrete de cinta magnética (en la era donde tales dispositivos secuenciales eran los principales medios de almacenamiento de masa)+__Ver también__: [[gpgtar]] 
 +=== .tar.bz2 === 
 +== Comprimir el archivador .tar.bz2 == 
 +Archiva y comprime el contenido del archivo .tar.bz2 con bzip2:
  
-Desempaqueta un fichero ''.tar'' con:+<code bash> 
 +tar cvjf archivo.tar.bz2 directorio/
 +</code>
  
-<code bash>tar xvf fichero.tar</code>+== Descomprimir el archivador .tar.bz2 == 
 +Descomprime y extrae el contenido del fichero ''tar.bz2'':
  
-==== .tgz, .tar.gz ==== +<code bash>tar xvjf archivo.tar.bz2</code>
-Descomprime el ''.tar.gz'' - ''.tgz'' en Windows - usando gzip, y desempaqueta el resultado:+
  
-<code bash>tar xvzf fichero.tar.gz</code>+===.tar.xz=== 
 +Es similar al tar.gz, pero comprime mejor el archivador gracias al protocolo **xz**: 
 +== Comprime el archivador .tar.xz== 
 +En BSD debes crear primero el tar y luego comprimirlo con xz para crear el ''archivo.tar.xz'': 
 +<code bash> 
 +tar cvf archivo.tar directorio/* ; 
 +xz archivo.tar 
 +</code>
  
-=== tar.xz === +>tar.xz se suele especificar para empaquetado de binarios de software.
-Descomprime el ''.tar.xz'' con **xz** y desempaqueta los ficheros binarios con **tar**:+
  
-<code bash>tar -xJf fichero.tar.xz</code> +==Descomprime el archivador .tar.xz== 
-  +En BSD debes descomprimir el ''.tar.xz'' con **xz** y desarchiva su contenido:
-==== .bz2 ==== +
-Descomprime el fichero ''.bz2'' usando el programa **bzip2**, ya sea con el sufijo ''-d'' ("descomprimir") o bien el comando **bunzip2** (que no es más que un enlace a bzip2).+
  
 <code bash> <code bash>
-bzip2 -d fichero.bz2 +xz -d archivo.tar.xz ; 
-bunzip2 fichero.bz2+tar xf archivo.tar
 </code> </code>
  
-Si en lugar de descomprimir el contenido de un fichero ''.bz2'' sólo deseas leerlo, puedes usar **bzcat**:+====.zip==== 
 +Los archivos comprimidos ''.zip''/''.ZIP'' fueron desarrollados por Phil Katz, y extremadamente populares en múltiples plataformas y sistemas operativos. Úsalos si debes transferir ficheros comprimidos a otras plataformas como Windows.  
 +==Comprimir .zip== 
 +Comprime varios ficheros o directorios y generar un ''archivo.zip'':
  
-<code bash>bzcat fichero.gz | less</code>+<code bash>zip fichero_comprimido.zip fichero1 fichero2 fichero3</code>
  
-==== .tar.bz2 ==== +...o puedes usar la opción (''-r'') para comprimir recursivamente los contenidos de directorio/s, con los ficheros subdirectorios que contenga/n:
-Descomprime el paquete ''.tar.bz2'' con **bzip2**, lo desempaqueta con **tar**.+
  
-<code bash>tar xvjf fichero.tar.bz2</code> +<code bash>zip -r archivo_comprimido.zip directorio</code> 
- +==Descomprimir .zip== 
-==== .zip ==== +Descomprime un archivo comprimido ''.zip'' con gzip ''-d'':
-Descomprime un paquete comprimido en PKWare ''.zip'' con gzip ''-d'', o bien **unzip**:+
  
 <code bash> <code bash>
-unzip fichero.zip +unzip archivo.zip
-gzip -d fichero.zip+
 </code> </code>
  
-=== rar ===+ 
 +>A pesar de que el protocolo PKware ZIP funcionan en la mayoría de las plataformas, no contempla ciertos atributos especiales utilizados en sistemas tipo [[UNIX]] (posesión de los archivos, ciertos permisos, etc). Por tal motivo el método recomendado en UNIX es usar [[#comprimir tar.gz|''tar.gz'']]. Ambos presentan una compresión reducida. 
 +==== rar ====
 El ''.rar'' es un formato de empaquetado y compresión propietario de A. Roshal, muy extendido. Descomprímelo con: El ''.rar'' es un formato de empaquetado y compresión propietario de A. Roshal, muy extendido. Descomprímelo con:
 <code bash>rar -x fichero.rar</code> <code bash>rar -x fichero.rar</code>
  • compresores_desde_la_terminal.1706810544.txt.gz
  • Última modificación: 2024/02/01 18:02
  • por peron