DTRX - 许多存档类型的通用存档提取器
DTRX工具是一个通用存档提取器,用于许多存档类型。
DTRX代表"Do The Right Extraction"。
它是一个免费的开源归档提取工具。
我们无需多个提取工具来处理不同类型的存档文件。
DTRX将处理几乎所有类型的存档文件,如Tar,Zip,CPIO,DEB,RPM,GEM,7Z,CAB,LZH,RAR,GZ,BZ2,LZMA,XZ和多种exe文件,包括Microsoft内阁档案,InstallShield Archives和自我提取ZIP文件。
DTRX会将存档提取到自己的专用目录中。
此外,它确保我们可以读取和写入刚刚提取的所有文件,同时将其余的权限完好无损。
更重要的是,它可以在存档内部找到档案并提取它们。
在此简要教程中,我们将看到如何安装和使用DTRX以在UNIX的操作系统中处理存档文件。
DTRX - 智能归档提取实用程序
安装
关于Arch Linux中:
DTRX在AUR中提供。
如果我们Arch Linux或者任何其他Arch Linux衍生物,如Antergos,Manjaro Linux,我们可以使用Yaourt或者Packer等Aur帮助者安装它。
$yaourt -S dtrx
或者,
$packer -S dtrx
在Ubuntu及其衍生品:
DTRX提取工具可在Ubuntu的默认存储库中提供。
以下命令将在Ubuntu系统上安装DTRX。
$sudo apt-get install dtrx
在其他Linux发行版上,我们可以手动编译并将其从源安装并安装如下所示。
确保在Linux框中安装了Python。
然后,从这里下载最新版本。
$wget https://brettcsmith.org/2007/dtrx/dtrx-7.1.tar.gz
使用命令提取下载的存档文件:
$tar -xvf dtrx-7.1.tar.gz
转到其中提取DTRX的文件夹。
$cd dtrx-7.1
最后,编译并安装如下所示。
$python setup.py install --prefix=/usr/local
用法
与其他归档提取器不同,我们不需要记住所有选项和参数。
只需使用DTRX命令,然后使用归档文件如下所示。
$dtrx dir1.tar
其中,dir1.tar是tar存档文件。
它将将Dir1.tar存档的所有内容提取到名为DIR1中的文件夹中。
我们无需安装Tar归档实用程序或者不需要知道如何使用Tar命令提取存档。
DTR将提取给定文件,无论文件是哪个存档格式。
现在,考虑另一个名为dir2.zip的文件文件,该文件由存档文件组成,即file1.tar和file2.bz2.
让我们使用命令提取它:
$dtrx dir2.zip
DTRX足够智能,可以找到并告诉我们DIR2.zip文件包含两个其他档案。
而且,它会给我们列出的建议。
如上所述,我们可以通过输入下面给出的相关字母来选择以下任何操作。
- a - 递归递归归档文件和所有其他包含的存档文件。
- o - 提取此内容包含存档文件。
- n - 不要提取包含存档文件。这意味着此选项只会提取源归档文件,而不是其中内部的其他档案。
- v - 切勿在此次会话期间提取包含存档文件。
- l - 列出所有包含的存档。
我们还可以通过指定空格分隔的档案一次提取多个文件,如下所示。
$dtrx dir1.tar dir2.zip dir3.tar.bz2
同样,如果存档文件包含其中的其他档案,则会询问上述问题。
按任意字母执行相应的操作。
还可以从.deb或者.gem文件中提取元数据。
-m选项只能从这些文件中提取元数据,而不是整个内容。
$dtrx -m python_2.7.9-1_amd64.deb
要查看Abve文件的元数据,只需使用LS命令。
$ls python_2.7.9-1/ control md5sums postinst postrm preinst prerm
有关更多详细信息,请通过运行以下命令查看帮助部分:
$dtrx -h 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 --one=ONE_ENTRY_DEFAULT, --one-entry=ONE_ENTRY_DEFAULT specify extraction policy for one-entry archives: inside/rename/here -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