summaryrefslogtreecommitdiff
path: root/archivers/gtar-base/files/gtar.1
blob: 18736655852dce083b8916270268cfc35baa973a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
.\"
.\" $NetBSD: gtar.1,v 1.4 2004/09/27 16:12:04 wiz Exp $
.\" @(#)tar.1 1.13.25 2000/12/14 Werner;
.\" from SuSe tar-1.13.25-45.src.rpm
.TH TAR 1 "14 December 2000" "Version 1.13.25"
.UC 1
.SH NAME
tar \- The GNU version of the tar archiving utility
.SH SYNOPSIS
.B tar
.RB [ \- ]
.RB [ "A \-\-catenate \-\-concatenate" \||\| "c \-\-create" \||\| "d \-\-diff \-\-compare" \||\| "r \-\-append" \||\| "t \-\-list" \||\| "u \-\-update" \||\| "x \-\-extract \-\-get" ]
.RB [ \-\-atime\-preserve ]
.RB [ "\-b, \-\-block\-size=\fIN\fP" ]
.RB [ "\-B, \-\-read\-full\-blocks" ]
.RB [ "\-C, \-\-directory=\fIDIR\fP" ]
.RB [ \-\-checkpoint ]
.RB [ "\-f, \-\-file=\fR[\fP\fIHOSTNAME\fP:\fR]\fP\fIF\fP" ]
.RB [ "\-F, \-\-info\-script=\fIF\fP, \-\-new\-volume\-script=\fIF\fP" ]
.RB [ "\-\-force\-local" ]
.RB [ "\-G, \-\-incremental" ]
.RB [ "\-g, \-\-listed\-incremental=\fIF\fP" ]
.RB [ "\-h, \-\-dereference" ]
.RB [ "\-i, \-\-ignore\-zeros" ]
.RB [ "\-j, \-\-bzip2, \-\-bunzip2" ]
.RB [ \-\-ignore\-failed\-read ]
.RB [ "\-k, \-\-keep\-old\-files" ]
.RB [ "\-K, \-\-starting\-file=\fIF\fP" ]
.RB [ "\-l, \-\-one\-file\-system" ]
.RB [ "\-L, \-\-tape\-length=\fIN\fP" ]
.RB [ "\-m, \-\-modification\-time" ]
.RB [ "\-M, \-\-multi\-volume" ]
.RB [ "\-N, \-\-after\-date=\fIDATE\fP, \-\-newer=\fIDATE\fP" ]
.RB [ "\-o, \-\-old\-archive, \-\-portability" ]
.RB [ "\-O, \-\-to\-stdout" ]
.RB [ "\-p, \-\-same\-permissions, \-\-preserve\-permissions" ]
.RB [ "\-P, \-\-absolute\-paths" ]
.RB [ \-\-preserve ]
.RB [ "\-R, \-\-record\-number" ]
.RB [ "\-\-recursive\-unlink" ]
.RB [ \-\-remove\-files ]
.RB [ "\-s, \-\-same\-order, \-\-preserve\-order" ]
.RB [ \-\-same\-owner ]
.RB [ "\-S, \-\-sparse" ]
.RB [ "\-T, \-\-files\-from=\fIF\fP" ]
.RB [ \-\-null ]
.RB [ \-\-totals ]
.RB [ "\-v, \-\-verbose" ]
.RB [ "\-V, \-\-label=\fINAME\fP" ]
.RB [ \-\-version ]
.RB [ "\-w, \-\-interactive, \-\-confirmation" ]
.RB [ "\-W, \-\-verify" ]
.RB [ "\-\-exclude=\fIFILE\fP" ]
.RB [ "\-X, \-\-exclude\-from=\fIFILE\fP" ]
.RB [ "\-Z, \-\-compress, \-\-uncompress" ]
.RB [ "\-z, \-\-gzip, \-\-ungzip" ]
.RB [ "\-\-use\-compress\-program=\fIPROG\fP" ]
.RB [ \-\-block\-compress ]
.RB [ \-\fR[\fP0\-7\fR][\fPlmh\fR]\fP ]
.TP
.I filename1 \fR[\fP filename2\fR,\fP \fR...\fP filenameN \fR]
.TP
.I directory1 \fR[\fP directory2\fR,\fP \fR...\fP directoryN \fR]
.SH DESCRIPTION
.LP
This manual page documents the GNU version 1.13.25 of
.BR tar ,
an archiving program designed to store and extract files from
an archive file known as a
.IR tarfile .
A
.I tarfile
may be made on a tape drive, however, it is also common
to write a
.I tarfile
to a normal file.
The first argument to
.B tar
must be one of the options:
.BR Acdrtux ,
followed by any optional functions.
The final arguments to
.B tar
are the names of the files or directories which should be archived. The use
of a directory name always implies that the subdirectories below should be
included in the archive.
.SH "FUNCTION LETTERS"
.TP
.B One of the following options must be used:
.TP
.B \-A, \-\-catenate, \-\-concatenate
append tar files to an archive
.TP
.B \-c, \-\-create
create a new archive
.TP
.B \-d, \-\-diff, \-\-compare
find differences between archive and file system
.TP
.B \-\-delete
delete from the archive (not for use on mag tapes!)
.TP
.B \-r, \-\-append
append files to the end of an archive
.TP
.B \-t, \-\-list
list the contents of an archive
.TP
.B \-u, \-\-update
only append files that are newer than copy in archive
.TP
.B \-x, \-\-extract, \-\-get
extract files from an archive
.SH "OTHER OPTIONS"
.TP
.B \-\-atime\-preserve
don't change access times on dumped files
.TP
.B \-b, \-\-block\-size=\fIN
block size of \fIN\fPx512 bytes (default \fIN\fP=20)
.TP
.B \-B, \-\-read\-full\-blocks
reblock as we read (for reading 4.2BSD pipes)
.TP
.B \-C, \-\-directory=\fIDIR
change to directory \fIDIR
.TP
.B \-\-checkpoint
print directory names while reading the archive
.TP
.B \-f, \-\-file=\fR[\fP\fIHOSTNAME\fP:\fR]\fP\fIF
use archive file or device \fIF\fP (default /dev/rmt0)
.TP
.B \-\-force\-local
archive file is local even if has a colon
.TP
.B \-F, \-\-info\-script=\fIF\fP, \-\-new\-volume\-script=\fIF
run script at end of each tape (implies \-M)
.TP
.B \-G, \-\-incremental
create/list/extract old GNU\-format incremental backup
.TP
.B \-g, \-\-listed\-incremental=\fIF
create/list/extract new GNU\-format incremental backup
.TP
.B \-h, \-\-dereference
don't dump symlinks; dump the files they point to
.TP
.B \-i, \-\-ignore\-zeros
ignore blocks of zeros in archive (normally mean EOF)
.TP
.B \-j, \-\-bzip2, \-\-bunzip2
filter the archive through bzip2
.TP
.B \-\-ignore\-failed\-read
don't exit with non\-zero status on unreadable files
.TP
.B \-k, \-\-keep\-old\-files
keep existing files; don't overwrite them from archive
.TP
.B \-K, \-\-starting\-file=\fIF
begin at file F in the archive
.TP
.B \-l, \-\-one\-file\-system
stay in local file system when creating an archive
.TP
.B \-L, \-\-tape\-length=\fIN
change tapes after writing N*1024 bytes
.TP
.B \-m, \-\-modification\-time
don't extract file modified time
.TP
.B \-M, \-\-multi\-volume
create/list/extract multi\-volume archive
.TP
.B \-N, \-\-after\-date=\fIDATE\fP, \-\-newer=\fIDATE
only store files newer than \fIDATE
.TP
.B \-o, \-\-old\-archive, \-\-portability
write a V7 format archive, rather than ANSI format
.TP
.B \-O, \-\-to\-stdout
extract files to standard output
.TP
.B \-p, \-\-same\-permissions, \-\-preserve\-permissions
extract all protection information
.TP
.B \-P, \-\-absolute\-paths
don't strip leading `/'s from file names
.TP
.B \-\-preserve
like \-p \-s
.TP
.B \-R, \-\-record\-number
show record number within archive with each message
.TP
.B \-\-recursive\-unlink
Empty hierarchies prior to extracting directory
.TP
.B \-\-remove\-files
remove files after adding them to the archive
.TP
.B \-s, \-\-same\-order, \-\-preserve\-order
list of names to extract is sorted to match archive
.TP
.B \-\-same\-owner
create extracted files with the same ownership
.TP
.B \-S, \-\-sparse
handle sparse files efficiently
.TP
.B \-T, \-\-files\-from=\fIF
get names to extract or create from file \fIF
.TP
.B \-\-null
-T reads null\-terminated names, disable \-C
.TP
.B \-\-totals
print total bytes written with \-\-create
.TP
.B \-v, \-\-verbose
verbosely list files processed
.TP
.B \-V, \-\-label=\fINAME
create archive with volume name \fINAME
.TP
.B \-\-version
print tar program version number
.TP
.B \-w, \-\-interactive, \-\-confirmation
ask for confirmation for every action
.TP
.B \-W, \-\-verify
attempt to verify the archive after writing it
.TP
.B \-\-exclude=\fIFILE
exclude file \fIFILE
.TP
.B \-X, \-\-exclude\-from=\fIFILE
exclude files listed in \fIFILE
.TP
.B \-Z, \-\-compress, \-\-uncompress      
filter the archive through compress
.TP
.B \-z, \-\-gzip, \-\-ungzip
filter the archive through gzip
.TP
.B \-\-use\-compress\-program=\fIPROG
filter the archive through \fIPROG\fP (which must accept \-d)
.TP
.B \-\-block\-compress
block the output of compression program for tapes
.TP
.B \-\fR[\fP0\-7\fR][\fPlmh\fR]
specify drive and density
.SH BUGS
.LP
The GNU folks, in general, abhor man pages, and create info documents instead.
The maintainer of tar falls into this category.  This man page is neither
complete, nor current, and was included in the Debian Linux packaging of tar
entirely to reduce the frequency with which the lack of a man page gets
reported as a bug in our defect tracking system.

If you really want to understand tar, then you should run info and read the
tar info pages, or use the info mode in emacs.