README

Tue, 15 Jul 2008 22:18:03 -0400

author
Brett Smith <brettcsmith@brettcsmith.org>
date
Tue, 15 Jul 2008 22:18:03 -0400
branch
trunk
changeset 76
705642fcb92c
parent 74
dd577317bccb
child 84
d78d63cb4c4e
permissions
-rw-r--r--

Give extraction stderr more context, and suppress normal cpio stderr junk.

cpio will write a useless "N blocks" message to stderr without --quiet, so
use that.

When we show extraction's stderr to the user, first write a line explaining
what it is, and also don't forget to strip the trailing newline, since
.warning() writes its own.

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
74
dd577317bccb Updates for 6.1 release.
Brett Smith <brettcsmith@brettcsmith.org>
parents: 56
diff changeset
73 dtrx 6.1 is copyright (c) 2006, 2007, 2008 `Brett Smith`_. Feel free to
45
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