README

Sun, 13 Jul 2008 17:54:47 -0400

author
Brett Smith <brettcsmith@brettcsmith.org>
date
Sun, 13 Jul 2008 17:54:47 -0400
branch
trunk
changeset 73
a4fff3df2242
parent 56
d061b94889aa
child 74
dd577317bccb
permissions
-rw-r--r--

Don't assume .exe files are Cabinet archives just by extension.

.exe files are as likely as not to be archives, so I'd rather not bug the
user for recursive extraction every time they're in an archive. So we'll
detect these sorts of archives by their magic only, which prevents them
from triggering recursive extraction attempts.

19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
1 dtrx - Intelligent archive extraction
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
2 =====================================
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
3
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
4 Introduction
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
5 ------------
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
6
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
7 dtrx extracts archives in a number of different formats; it currently
37
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
8 supports tar, zip, cpio, rpm, deb, gem, 7z, and cab files. It can also
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
9 decompress files compressed with gzip, bzip2, lzma, or compress.
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
10
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
11 In addition to providing one command to handle many different archive
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
12 types, dtrx also aids the user by extracting contents consistently. By
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
13 default, everything will be written to a dedicated directory that's named
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
14 after the archive. dtrx will also change the permissions to ensure that the
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
15 owner can read and write all those files.
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
16
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
17 Running dtrx
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
18 ------------
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
19
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
20 To run dtrx, simply call it with the archive(s) you wish to extract as
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
21 arguments. For example::
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
22
37
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
23 $ dtrx coreutils-5.*.tar.gz
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
24
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
25 dtrx supports a number of options to mandate specific behavior:
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
26
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
27 -r, --recursive
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
28 With this option, dtrx will search inside the archives you specify to see
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
29 if any of the contents are themselves archives, and extract those as
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
30 well.
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
31
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
32 -o, --overwrite
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
33 Normally, dtrx will avoid extracting into a directory that already exists,
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
34 and instead try to find an alternative name to use. If this option is
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
35 listed, dtrx will use the default directory name no matter what.
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
36
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
37 -f, --flat
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
38 Extract archive contents into the current directory, instead of their
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
39 own dedicated directory. This is handy if you have multiple archive
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
40 files which all need to be extracted into the same directory structure.
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
41 Note that existing files may be overwritten with this option.
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
42
24
60056f3e3e60 [svn] Documentation update.
brett
parents: 19
diff changeset
43 -n, --noninteractive
60056f3e3e60 [svn] Documentation update.
brett
parents: 19
diff changeset
44 dtrx will normally ask the user how to handle certain corner cases, such
60056f3e3e60 [svn] Documentation update.
brett
parents: 19
diff changeset
45 as how to handle an archive that only contains one file. This option
37
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
46 suppresses those questions; dtrx will instead use sane, conservative
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
47 defaults.
24
60056f3e3e60 [svn] Documentation update.
brett
parents: 19
diff changeset
48
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
49 -l, -t, --list, --table
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
50 Don't extract the archives; just list their contents on standard output.
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
51
37
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
52 -m, --metadata
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
53 Extract the metadata from .deb and .gem archives, instead of their normal
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
54 contents.
c27c1073ec12 [svn] Documentation update.
brett
parents: 28
diff changeset
55
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
56 -q, --quiet
56
d061b94889aa [svn] Add NEWS, and other documentation updates.
brett
parents: 45
diff changeset
57 Suppress warning messages. Listing this option twice will cause dtrx to
d061b94889aa [svn] Add NEWS, and other documentation updates.
brett
parents: 45
diff changeset
58 be silent.
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
59
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
60 -v, --verbose
56
d061b94889aa [svn] Add NEWS, and other documentation updates.
brett
parents: 45
diff changeset
61 Show the files that are being extracted. Listing this option twice will
d061b94889aa [svn] Add NEWS, and other documentation updates.
brett
parents: 45
diff changeset
62 cause dtrx to print debugging information.
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
63
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
64 --help
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
65 Display basic help.
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
66
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
67 --version
44
69cd94403088 [svn] Missed a couple of spots.
brett
parents: 42
diff changeset
68 Display dtrx's version, copyright, and license information.
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
69
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
70 Other Useful Information
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
71 ------------------------
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
72
45
37d555407334 [svn] At work I was getting an unhelpful "No such file or directory" error when I
brett
parents: 44
diff changeset
73 dtrx 6.0 is copyright (c) 2006, 2007, 2008 `Brett Smith`_. Feel free to
37d555407334 [svn] At work I was getting an unhelpful "No such file or directory" error when I
brett
parents: 44
diff changeset
74 send comments, bug reports, patches, and so on. You can find the latest
37d555407334 [svn] At work I was getting an unhelpful "No such file or directory" error when I
brett
parents: 44
diff changeset
75 version of dtrx on `its home page`_.
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
76
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
77 .. _`Brett Smith`: mailto:brettcsmith@brettcsmith.org
42
4a4cab75d5e6 [svn] Update documentation.
brett
parents: 37
diff changeset
78 .. _`its home page`: http://www.brettcsmith.org/2007/dtrx/
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
79
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 18
diff changeset
80 dtrx is free software; you can redistribute it and/or modify it under the
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
81 terms of the GNU General Public License as published by the Free Software
28
4d88f2231d33 [svn] Change all the license notices from GPLv2 to GPLv3.
brett
parents: 24
diff changeset
82 Foundation; either version 3 of the License, or (at your option) any later
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
83 version.
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
84
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
85 This program is distributed in the hope that it will be useful, but WITHOUT
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
86 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
87 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
88 more details.
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
89
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff changeset
90 You should have received a copy of the GNU General Public License along
42
4a4cab75d5e6 [svn] Update documentation.
brett
parents: 37
diff changeset
91 with this program; if not, see <http://www.gnu.org/licenses/>.

mercurial