Búsqueda de sitios web

Dtrx: una herramienta inteligente de extracción de archivos (tar, zip, cpio, rpm, deb, rar) para Linux


Es posible que todos nos hayamos enfrentado a una situación en algún momento u otro mientras usábamos los comandos tar.gz, tar.bz2 y tbz de Linux. . Tantos tipos de archivos, tantos comandos para recordar... Bueno, ya no, gracias a la herramienta dtrx.

  1. 18 comandos Tar para crear y extraer archivos en Linux
  2. Cómo abrir, extraer y crear archivos RAR en Linux

¿Qué es Dtrx?

Dtrx significa "Do The Right Extraction", es una aplicación de línea de comandos de código abierto y muy eficaz para sistemas *nix que simplifica el trabajo de extracción de archivos.

El comando dtrx reemplaza los comandos “tar -zxvf” o “tar -xjf” y proporciona un único comando para extraer archivos. en varios formatos diferentes, incluidos tar, zip, rpm, deb, gem >, 7z, cpio, rar y muchos más. También se puede utilizar para descomprimir archivos comprimidos con bzip2, gzip, etc.

De forma predeterminada, dtrx extrae contenidos a un directorio dedicado y también soluciona problemas de permisos (como permiso denegado) que enfrenta el usuario mientras extrae contenido para garantizar que el propietario pueda leer y escribir todo. esos archivos.

Funciones de Dtrx

  1. Maneja muchos tipos de archivos: proporciona solo un comando simple para extraer archivos tar, zip, rar, gz, bz2, xz, rpm, deb, gem, archivos zip autoextraíbles y muchos otros formatos de archivos exe. .
  2. Mantiene todo organizado: extraerá archivos en sus propios directorios dedicados.
  3. Permisos sanos: también garantiza que el usuario pueda leer y escribir todos esos archivos después de la extracción, manteniendo los permisos intactos.
  4. Extracción recursiva: puede encontrar archivos dentro del archivo y extraerlos también.

Cómo instalar Dtrx en Linux

La herramienta dtrx está incluida de forma predeterminada en los repositorios de Ubuntu, todo lo que tienes que hacer es simplemente hacer un apt-get para instalarla en tu sistema.

En Debian/Ubuntu/Linux Mint

sudo apt-get install dtrx

En RHEL/CentOS/Fedora

En los sistemas basados en Red Hat, dtrx no está disponible a través de los repositorios predeterminados; debe descargar un script dtrx e instalar el programa en todo el sistema usando los siguientes comandos como usuario root.

wget http://brettcsmith.org/2007/dtrx/dtrx-7.1.tar.gz
tar -xvf dtrx-7.1.tar.gz 
cd dtrx-7.1
python setup.py install --prefix=/usr/local
Salida de muestra
running install
running build
running build_scripts
creating build
creating build/scripts-2.6
copying and adjusting scripts/dtrx -> build/scripts-2.6
changing mode of build/scripts-2.6/dtrx from 644 to 755
running install_scripts
copying build/scripts-2.6/dtrx -> /usr/local/bin
changing mode of /usr/local/bin/dtrx to 755
running install_egg_info
Creating /usr/local/lib/python2.6/site-packages/
Writing /usr/local/lib/python2.6/site-packages/dtrx-7.1-py2.6.egg-info

Cómo utilizar el comando dtrx

El comando dtrx es como el anillo único que los gobierna a todos en El Señor de los Anillos. En lugar de tener que recordar la sintaxis de cada archivo, todo lo que tienes que recordar es el comando dtrx.

1. Extracción de archivo único

Por ejemplo, quiero extraer un archivo llamado "tecmint27-12-2013.gz", solo ejecuto el comando dtrx sin usar ningún indicador.

[root@tecmint]# dtrx tecmint27-12-2013.gz

Además de simplificar la extracción, tiene muchas otras opciones, como extraer el archivo a una carpeta y extraer recursivamente todos los demás archivos dentro de un archivo determinado.

2. Extracción de varios archivos

Considere que tiene un archivo "dtrAll.zip", que consta de dtr1.zip, dtr2.zip y dtr3.zip< cada uno de los cuales consta de dtr1, dtr2 y dtr3 respectivamente. En lugar de tener que extraer primero manualmente el dtrAll zip y luego extraer cada uno de los dtr1, dtr2 y dtr3. puede extraerlo directamente en las carpetas respectivas usando dtrx y seleccionando la opción "a", extrae todos los archivos zip de forma recursiva.

[root@tecmint]# dtrx dtrAll.zip
Salida de muestra
dtrx: WARNING: extracting /root/dtrAll.zip to dtrAll.1
dtrAll.zip contains 3 other archive file(s), out of 3 file(s) total.
You can:
 * _A_lways extract included archives during this session
 * extract included archives this _O_nce
 * choose _N_ot to extract included archives this once
 * ne_V_er extract included archives during this session
 * _L_ist included archives
What do you want to do?  (a/o/N/v/l) a

Después de la extracción, el contenido del directorio extraído se puede verificar usando el comando ls.

[root@tecmint]# cd dtrAll
[root@tecmint]# ls 

dtr1  dtr1.zip  dtr2  dtr2.zip  dtr3  dtr3.zip

3. Extracción de un archivo específico

Digamos que desea extraer el primer archivo y no los archivos que contiene. Al seleccionar N, solo extrae el archivo dado y no otros archivos dentro de él.

[root@tecmint]# dtrx dtrAll.zip
Salida de muestra
dtrx: WARNING: extracting /root/dtrAll.zip to dtrAll.1
dtrAll.zip contains 3 other archive file(s), out of 3 file(s) total.
You can:
 * _A_lways extract included archives during this session
 * extract included archives this _O_nce
 * choose _N_ot to extract included archives this once
 * ne_V_er extract included archives during this session
 * _L_ist included archives
What do you want to do?  (a/o/N/v/l) N

El contenido del directorio extraído se puede verificar usando el comando ls como se muestra.

[root@tecmint]# cd dtrAll
[root@tecmint]# ls

dtr1.zip dtr2.zip dtr3.zip

4. Extraiga cada capa del archivo

Para extraer cada capa de archivo dentro del archivo caso por caso, es decir, si desea extraer la segunda capa de archivos pero no la tercera capa, puede usar la opción “o”.

Considere que tiene un archivo zip "dtrNewAll.zip", que tiene "dtrAll.zip" y "dtrNew" como contenido. Ahora, si desea extraer el contenido de “dtrNewAll” y “dtrAll” también pero no de dtr1.zip, dtr2 .zip y dtr3.zip, puede utilizar las opciones “o” y “n” como se muestra a continuación.

dtrx dtrNewAll.zip
Salida de muestra
dtrNewAll.zip contains 1 other archive file(s), out of 2 file(s) total.
You can:
 * _A_lways extract included archives during this session
 * extract included archives this _O_nce
 * choose _N_ot to extract included archives this once
 * ne_V_er extract included archives during this session
 * _L_ist included archives
What do you want to do?  (a/o/N/v/l) o
dtrAll.zip contains 3 other archive file(s), out of 3 file(s) total.
You can:
 * _A_lways extract included archives during this session
 * extract included archives this _O_nce
 * choose _N_ot to extract included archives this once
 * ne_V_er extract included archives during this session
 * _L_ist included archives
What do you want to do?  (a/o/N/v/l) n

El contenido del directorio extraído se puede verificar usando el comando ls como se muestra.

[root@tecmint]# cd dtrNewAll
[root@tecmint]# ls

dtrAll  dtrAll.zip  dtrNew
[root@tecmint]# cd dtrAll
[root@tecmint]# ls

dtr1.zip dtr2.zip dtr3.zip

Primero seleccionamos la opción “o”, lo que significa que se extraerán todos los archivos dentro de dtrNewAll. Posteriormente seleccionamos la opción “n” para dtrAll.zip lo que significa que los archivos dentro de él dtr1.zip , dtr2.zip y dtr3.zip no se extraerán.

5. Extraiga metadatos de archivos .deb, .rpm y .gem

La opción “-m” extrae los metadatos de los archivos .deb, .rpm y .gem. en lugar de su contenido normal. A continuación se muestra un ejemplo del comando.

[root@tecmint]# dtrx -m openfire_3.8.2_all.deb 
[root@tecmint]# dtrx -m openfire-3.8.2-1.i386.rpm
[root@tecmint]# ls

conffiles  control  md5sums  postinst  postrm  prerm

Hay muchas más opciones de dtrx para explorar, simplemente ejecute “dtrx –help” para enumerar las opciones disponibles.

[root@tecmint]# dtrx  --help

Usage: dtrx [options] archive [archive2 ...]

Intelligent archive extractor

Options:
  --version             	show program's version number and exit
  -h, --help            	show this help message and exit
  -l, -t, --list, --table      	list contents of archives on standard output
  -m, --metadata        	extract metadata from a .deb/.gem
  -r, --recursive       	extract archives contained in the ones listed
  -n, --noninteractive  	don't ask how to handle special cases
  -o, --overwrite       	overwrite any existing target output
  -f, --flat, --no-directory    extract everything to the current directory
  -v, --verbose         	be verbose/print debugging information
  -q, --quiet           	suppress warning/error messages

Enlaces de referencia

Página de inicio

Creo que debes probar dtrx, porque es la única herramienta potente de línea de comandos que proporciona un único comando para descomprimir cualquier formato de archivos. Eso es todo por ahora y no olvides dejar tu nota en la sección de comentarios.

Artículos relacionados: