14 october 2021
¿Como descomprimo archivos fácilmente desde la Consola?
Damas y Caballeros:
Toda razón es buena para empilcharse y empaquetarse, más teniendo en cuenta la presencia de tan dignísimos comensales. Son pocas las ocasiones en las cuales un Conductor puede dedicarse un poco al ocio y al descanso, y ciertamente esta Cena de Alta Gala es también una función de Estado.
Ubuntu, como exponente del sistema GNU con Linux, también se empaqueta; puede operar con varios grupos de archivos empaquetados en uno: el formato tar. Este formato unificador tiene sus orígenes en la época del UNIX. Antiguamente, los archivos se almacenaban en cintas magnéticas, y en ese medio podía leerse únicamente de manera secuencial. Por tal motivo, para almacenar varios grupos de archivos convenía "unificarlos" en uno solo, y por tal motivo se generó el formato de archivador de cinta "Tape ARchiver". Mediante esta metodología, se pueden transportar múltiples archivos en un solo contenedor o archivador.
La evolución trajo las mejoras: la tecnología y el desempeño matemático de las unidades de proceso hizo que pronto estos archivadores pudiesen a su vez comprimirse con diferentes algoritmos, y por ello los sistemas GNU con Linux cuentan con varios programas de compresión, cada uno con diferentes extensiones y herramientas que los operan.
No será raro que afrontemos los formatos comprimidos libres .bz2, .xz, .gz, .lz, .lzma, y los archivos secuenciados comprimidos con ellos, tales como los archivos tar.gz, .tar.lz, .tar.lzma, .tar.bz2, los archivos empaquetados de instalación .deb o .rpm. También tendremos formatos privativos como los empaquetados .cab, los archivos, los extendidos .zip, .rar, varios tipos de archivos para sistemas compatibles Micro$oft como .exe, InstallShield, .lzh, y formatos .7z, lhma, zip autoextraíbles. Si bien nuestra interfaz gráfica nos hace muy sencilla la tarea de descomprimir todos estas tipologías (simplemente se hace clic sobre ellos, y se elije "Extraer Aquí"), desde la Terminal de Línea de Comandos no es tan simple.
En primer lugar, debemos recordar qué descompresor utilizar para cada formato (untar, tar, gunzip, gzip, bzip2, lzip, unrar, unzip, rar, etc), y además, cada uno de estos programas suele contar con modificadores que hacen a la función (descomprimir el contenido, crear una carpeta, mostrar el proceso de descompresión en la terminal, etc). Toda esta panoplia, si bien poderosa, se torna muchas veces excesiva en complejidad para administrar estos ficheros comprimidos, pues debe memorizarse los comandos utilizados y sus variantes para cada uso, o recurrir al comando "man" y buscar la solución. No es algo práctico.
Por ello se creó dtrx. Se trata de un acrónimo para "Do The Right eXtraction", que en el idioma de Braden significa "realiza la extracción correcta". Se trata de una herramienta descompresora multiformato para los sistemas tipo UNIX, cuyo mérito es resolver toda la problemática para descomprimir archivos desde la Terminal, ahorrándonos tiempo. Simplemente necesitaremos recordar un único comando para extraer el fichero a una carpeta.
Para instalarlo simplemente abrimos una Terminal con Ctrl+Alt+T e ingresamos el siguiente Comando de Organización:
sudo apt-get install dtrx Una vez instalado este programa en el sistema, podremos descomprimir archivos más fácilment, simplemente ingresando:
dtrx archivo.ext
dtrx se asegurará que los archivos sean extraídos en sus propios directorios.
También puede encontrar recursivamente achivos comprimidos dentro de otros archivos comprimidos, y extraerlos acordemente. Para ello podríamos usar:
dtrx -r archivoconcomprimidos.tar.gz
Normalmente dtrx no sobreescribirá un directorio, intentando crear otro si existiese uno. Si durante la descompresión deseamos deseamos sobreescribir los datos destino, deberíamos indicarlo, por ejemplo con:
dtrx -o archivocomprimido.tar.bz2
Si no quisieramos descomprimir el archivo, sino solamente conocer su contenido, podremos hacerlo con los modificadores -l ("listado") o -t ("tabla"). Sería de la siguiente manera:
dtrx -l archivocomprimido.tar.gz
dtrx -t archivocomprimido.tar.gz