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/05 14:59] 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. Existen programas //compresores//  que hacen uso de distintos algoritmos con el fin de reducir la cantidad de espacio requerido para almacenar la información.+Cada fichero ocupa espacio en un medio de almacenamiento.
  
-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.+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.
  
-Estos son algunos formatos convencionales, que guardan su utilidad.+Esto es especialmente útil para achicar el fichero para su transmisión o conservación definitiva.
  
-====.gz====+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====
 +**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 == ==Compresión de .gz ==
-Usa el programa **gzip** para comprimir __un único ''fichero.ext''__  para generar un fichero ''.gz'' comprimido:+Usa el programa **gzip** para comprimir ''fichero.ext''. Esto creará una copia comprimida con extensión ''.gz'':
  
 <code bash> <code bash>
Línea 16: 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== == Descompresión de .gz==
 Usa **gzip** con el indicador ''-d'' para descomprimir un fichero ''.gz'': Usa **gzip** con el indicador ''-d'' para descomprimir un fichero ''.gz'':
Línea 24: Línea 28:
 </code> </code>
  
-Si en lugar de descomprimir el contenido de un fichero .gz sólo deseas leerlopuedes usar **zcat**:+Si deseas leer el contenido de un fichero de texto comprimido en un ''.gz''usa **zcat**:
  
 <code bash>zcat fichero.gz | less</code> <code bash>zcat fichero.gz | less</code>
Línea 30: Línea 34:
  
 ==== .bz2 ==== ==== .bz2 ====
 +**bzip2** requiere mayor potencia de cómputo que GNU Zip pero comprime más efectivamente. Sin embargo, está menos extendido en otras plataformas.
 +
 ==Compresión de .bz2== ==Compresión de .bz2==
-Uza **bzip2** para comprimir __tanto ficheros como directorios__ y generar un archivador ''.bz2''.+Usa **bzip2** para comprimir __solo un fichero__ y generar un archivador ''.bz2''.
  
-<code bash>bzip2 -k ficheros_o_directorios</code>+<code bash>bzip2 -k fichero.ext</code>
 ==Descompresión de .bz2== ==Descompresión de .bz2==
 Usa **bzip2** con el sufijo ''-d'' para descomprime el fichero ''.bz2''. Usa **bzip2** con el sufijo ''-d'' para descomprime el fichero ''.bz2''.
Línea 41: Línea 47:
 </code> </code>
  
-Si en lugar de descomprimir el contenido de un fichero ''.bz2'' sólo deseas leerlopuedes usar **bzcat**:+Si sólo deseas leer el contenido de un fichero de texto comprimido con ''.bz2'', usa **bzcat**:
  
 <code bash>bzcat fichero.bz2 | less</code> <code bash>bzcat fichero.bz2 | less</code>
- 
-> Requeriendo mayor potencia de cómputo que zip, bzip2 comprime más efectivamente. Sin embargo, es menos extendido en otras plataformas. 
  
 ====.xz==== ====.xz====
 +La compresión más extrema (y de menor velocidad) la logra el compresor **xz**.
 ==Compresión de .xz== ==Compresión de .xz==
-Usa el programa **xz** para comprimir __ficheros__. Generarán un fichero ''.xz''.+Con el programa **xz** podrás comprimir __un solo fichero__; esto generará un fichero ''.xz''.
  
 <code bash>xz -k fichero.ext</code> <code bash>xz -k fichero.ext</code>
 +
 ==Descompresión de .xz== ==Descompresión de .xz==
-Decomprime el fichero con:+Decomprime un ''fichero.xz'' con:
  
 <code bash>xz -d fichero.xz</code> <code bash>xz -d fichero.xz</code>
Línea 59: Línea 65:
  
 ==== .tar ==== ==== .tar ====
-El programa **tar** se usa para crear un fichero ''.tar'', un //archivador// concebido para meter varios ficheros en uno solo (encadenándolos binariamente uno tras otro).+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.
  
->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). +>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).
  
-Desempaqueta un fichero ''.tar'' con:+==Archivar en .tar== 
 +Archiva todos los ficheros contenidos de un ''directorio'' con tar: 
 +<code bash>tar cvf archivoempaquetado.tar directorio/*</code>
  
-<code bash>tar xvf fichero.tar</code>+==Desarchivar un .tar== 
 +Extrae el contenido de un fichero ''.tar'':
  
 +<code bash>tar xvf archivoempaquetado.tar</code>
  
-====.tar.gz====+====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:
  
-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'')+===.tar.gz=== 
 + 
 +==Comprimir un archivador .tar.gz== 
 +Si no lo has hechocoloca 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>
Línea 76: Línea 92:
 </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".+>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".
  
-Descomprime el ''.tar.gz'' (en ocasiones puede aparecer como ''.tgz'' en Windows) - usando **tar**, y desempaqueta el resultado:+==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):
  
-<code bash>tar xvzf fichero.tar.gz</code>+<code bash>tar xvzf archivo.tar.gz</code>
  
-==== .tar.bz2 ==== +__Ver también__: [[gpgtar]] 
-Descomprime el paquete ''.tar.bz2'' con **bzip2**, lo desempaqueta con **tar**.+=== .tar.bz2 === 
 +== Comprimir el archivador .tar.bz2 == 
 +Archiva comprime el contenido del archivo .tar.bz2 con bzip2:
  
-<code bash>tar xvjf fichero.tar.bz2</code>+<code bash> 
 +tar cvjf archivo.tar.bz2 directorio/
 +</code>
  
-====.tar.xz==== +== Descomprimir el archivador .tar.bz2 == 
-Es similar al tar.gz, pero comprime mejor gracias al protocolo **xz**:+Descomprime y extrae el contenido del fichero ''tar.bz2'':
  
-<code bash>tar -cJf programa.tar.xz fichero_binario</code>+<code bash>tar xvjf archivo.tar.bz2</code>
  
->tar.xz se suele especificar para empaquetado de programas binarios.+===.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>
  
-Descomprime el ''.tar.xz'' con **xz** y desempaqueta los ficheros binarios con **tar**:+>tar.xz se suele especificar para empaquetado de binarios de software.
  
-<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:
  
-====.zip==== +<code bash> 
-Los ficheros empaquetados ''.zip''/''.ZIP'' son multiplataforma y extremadamente populares. Úsalos para transferir ficheros comprimidos a otras plataformas como Windows+xz -d archivo.tar.xz ; 
 +tar xf archivo.tar 
 +</code>
  
-Puedes comprimir varios ficheros o directorios y generar un ''ficherocomprimido.zip'' usando una implementación libre del protocolo.+====.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>zip fichero_comprimido.zip fichero1 fichero2 fichero3</code> <code bash>zip fichero_comprimido.zip fichero1 fichero2 fichero3</code>
  
-...o también comprimir recursivamente (''-r''un directorio, con los ficheros y subdirectorios que contenga:+...o puedes usar la opción (''-r''para comprimir recursivamente los contenidos de directorio/s, con los ficheros y subdirectorios que contenga/n:
  
-<code bash>zip -r fichero_comprimido.zip directorio</code> +<code bash>zip -r archivo_comprimido.zip directorio</code> 
- +==Descomprimir .zip== 
-Descomprime un paquete comprimido ''.zip'' con gzip ''-d'':+Descomprime un archivo comprimido ''.zip'' con gzip ''-d'':
  
 <code bash> <code bash>
-gzip -d fichero.zip+unzip archivo.zip
 </code> </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]]. Ambos presentan una compresión reducida. +>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 ==== ==== 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.1707145162.txt.gz
  • Última modificación: 2024/02/05 14:59
  • por peron