dtrx: Intelligent archive extraction

Introduction

dtrx stands for “Do The Right Extraction.” It's a tool for Unix-like systems that takes all the hassle out of extracting archives. Here's an example of how you use it:

$ dtrx linux-2.6.10.tar.bz2

That's basically the same thing as:

$ tar -jxf linux-2.6.10.tar.bz2

But there's more to it than that. You know those really annoying files that don't put everything in a dedicated directory, and have the permissions all wrong?

$ tar -zvxf random-tarball.tar.gz
foo
bar
data/
data/text
$ cd data/
cd: permission denied: data

dtrx takes care of all those problems for you, too:

$ dtrx random-tarball.tar.gz
$ cd random-tarball/data
$ cat text
This all works properly.

dtrx is simple and powerful. Just use the same command for all your archive files, and they'll never frustrate you again.

Features

Download

Download dtrx 6.0. The SHA1 checksum for this file is dbe0211c90d6d03035f612fe31f96c825aa75274. New features in this release include:

Requirements

If you have Python 2.4 or greater, this should work out of the box. If you're stuck on Python 2.3, you can use this if you install the subprocess module. You'll need the usual tools for the archive types you want to extract: for example, if you're extracting zip files, you'll need zipinfo and unzip.

Installation

You can just put scripts/dtrx wherever is convenient for you, but if you want to install the program system-wide, you can also run the following command as root or equivalent:

python setup.py install

See the included INSTALL file for more information.