diff options
Diffstat (limited to 'bin/pax/tar.1')
-rw-r--r-- | bin/pax/tar.1 | 372 |
1 files changed, 372 insertions, 0 deletions
diff --git a/bin/pax/tar.1 b/bin/pax/tar.1 new file mode 100644 index 0000000..f98a138 --- /dev/null +++ b/bin/pax/tar.1 @@ -0,0 +1,372 @@ +.\" $NetBSD: tar.1,v 1.37 2017/07/03 21:33:23 wiz Exp $ +.\" +.\" Copyright (c) 1996 SigmaSoft, Th. Lockert +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" OpenBSD: tar.1,v 1.28 2000/11/09 23:58:56 aaron Exp +.\" +.Dd December 19, 2015 +.Dt TAR 1 +.Os +.Sh NAME +.Nm tar +.Nd tape archiver +.Sh SYNOPSIS +.Nm tar +.Sm off +.Oo \&- Oc {crtux} Op Fl 014578befHhJjklmOoPpqSvwXZz +.Sm on +.Op Ar archive +.Op Ar blocksize +.\" XXX how to do this right? +.Op Fl C Ar directory +.Op Fl s Ar replstr +.Op Fl T Ar file +.Op Ar file ... +.Sh DESCRIPTION +The +.Nm +command creates, adds files to, or extracts files from an +archive file in +.Dq tar +format. +A tar archive is often stored on a magnetic tape, but can be +stored equally well on a floppy, CD-ROM, or in a regular disk file. +.Pp +One of the following flags must be present: +.Bl -tag -width Ar +.It Fl c , Fl Fl create +Create new archive, or overwrite an existing archive, +adding the specified files to it. +.It Fl r , Fl Fl append +Append the named new files to existing archive. +Note that this will only work on media on which an end-of-file mark +can be overwritten. +.It Fl t , Fl Fl list +List contents of archive. +If any files are named on the +command line, only those files will be listed. +.It Fl u , Fl Fl update +Alias for +.Fl r . +.It Fl x , Fl Fl extract , Fl Fl get +Extract files from archive. +If any files are named on the +command line, only those files will be extracted from the +archive. +If more than one copy of a file exists in the +archive, later copies will overwrite earlier copies during +extraction. +The file mode and modification time are preserved +if possible. +The file mode is subject to modification by the +.Xr umask 2 . +.El +.Pp +In addition to the flags mentioned above, any of the following +flags may be used: +.Bl -tag -width Ar +.It Fl b Ar "blocking factor" , Fl Fl block-size Ar "blocking factor" +Set blocking factor to use for the archive. +.Nm +uses 512 byte blocks. +The default is 20, the maximum is 126. +Archives with a blocking factor larger 63 violate the +.Tn POSIX +standard and will not be portable to all systems. +.It Fl e +Stop after first error. +.It Fl f Ar archive , Fl Fl file Ar archive +Filename where the archive is stored. +Defaults to +.Pa /dev/rst0 . +If the archive is of the form: +.Ar [[user@]host:]file +then the archive will be processed using +.Xr rmt 8 . +.It Fl h , Fl Fl dereference +Follow symbolic links as if they were normal files +or directories. +.It Fl J, Fl Fl xz +Compress/decompress archive using +.Xr xz 1 . +.It Fl j, Fl Fl bzip2, Fl Fl bunzip2 +Use +.Xr bzip2 1 +for compression of the archive. +This option is a GNU extension. +.It Fl k , Fl Fl keep-old-files +Keep existing files; don't overwrite them from archive. +.It Fl l , Fl Fl one-file-system +Do not descend across mount points. +.\" should be '-X' +.It Fl m , Fl Fl modification-time +Do not preserve modification time. +.It Fl O +When creating and appending to an archive, write old-style (non-POSIX) archives. +When extracting from an archive, extract to standard output. +.It Fl o , Fl Fl portability , Fl Fl old-archive +Don't write directory information that the older (V7) style +.Nm +is unable to decode. +This implies the +.Fl O +flag. +.It Fl p , Fl Fl preserve-permissions , Fl Fl preserve +Preserve user and group ID as well as file mode regardless of +the current +.Xr umask 2 . +The setuid and setgid bits are only preserved if the user is +the superuser. +Only meaningful in conjunction with the +.Fl x +flag. +.It Fl q , Fl Fl fast-read +Select the first archive member that matches each +.Ar pattern +operand. +No more than one archive member is matched for each +.Ar pattern . +When members of type directory are matched, the file hierarchy rooted at that +directory is also matched. +.It Fl S , Fl Fl sparse +This flag has no effect as +.Nm +always generates sparse files. +.It Fl s Ar replstr +Modify the file or archive member names specified by the +.Ar pattern +or +.Ar file +operands according to the substitution expression +.Ar replstr , +using the syntax of the +.Xr ed 1 +utility regular expressions. +The format of these regular expressions are: +.Dl /old/new/[gps] +As in +.Xr ed 1 , +.Cm old +is a basic regular expression and +.Cm new +can contain an ampersand (&), \en (where n is a digit) back-references, +or subexpression matching. +The +.Cm old +string may also contain +.Aq Dv newline +characters. +Any non-null character can be used as a delimiter (/ is shown here). +Multiple +.Fl s +expressions can be specified. +The expressions are applied in the order they are specified on the +command line, terminating with the first successful substitution. +The optional trailing +.Cm g +continues to apply the substitution expression to the pathname substring +which starts with the first character following the end of the last successful +substitution. +The first unsuccessful substitution stops the operation of the +.Cm g +option. +The optional trailing +.Cm p +will cause the final result of a successful substitution to be written to +.Dv standard error +in the following format: +.Dl <original pathname> >> <new pathname> +File or archive member names that substitute to the empty string +are not selected and will be skipped. +The substitutions are applied by default to the destination hard and symbolic +links. +The optional trailing +.Cm s +prevents the substitutions from being performed on symbolic link destinations. +.It Fl v +Verbose operation mode. +.It Fl w , Fl Fl interactive , Fl Fl confirmation +Interactively rename files. +This option causes +.Nm +to prompt the user for the filename to use when storing or +extracting files in an archive. +.It Fl z , Fl Fl gzip , Fl Fl gunzip +Compress/decompress archive using +.Xr gzip 1 . +.It Fl B , Fl Fl read-full-blocks +Reassemble small reads into full blocks (For reading from 4.2BSD pipes). +.It Fl C Ar directory , Fl Fl directory Ar directory +This is a positional argument which sets the working directory for the +following files. +When extracting, files will be extracted into +the specified directory; when creating, the specified files will be matched +from the directory. +This argument and its parameter may also appear in a file list specified by +.Fl T . +.It Fl H +Only follow symlinks given on command line. +.Pp +Note SysVr3/i386 picked up ISC/SCO UNIX compatibility which implemented +.Dq Fl F Ar file +which was defined as obtaining a list of command line switches and files +on which to operate from the specified file, +but SunOS-5 uses +.Dq Fl I Ar file +because they use +.Sq Fl F +to mean something else. +We might someday provide SunOS-5 compatibility +but it makes little sense to confuse things with ISC/SCO compatibility. +.\".It Fl L +.\"Do not follow any symlinks (do the opposite of +.\".Fl h ). +.It Fl P , Fl Fl absolute-paths +Do not strip leading slashes +.Pq Sq / +from pathnames. +The default is to strip leading slashes. +.It Fl T Ar file , Fl Fl files-from Ar file +Read the names of files to archive or extract from the given file, one +per line. +A line may also specify the positional argument +.Dq Fl C Ar directory . +.It Fl X Ar file , Fl Fl exclude-from Ar file +Exclude files matching the shell glob patterns listed in the given file. +.\" exclude should be '-E' and '-X' should be one-file-system +.Pp +Note that it would be more standard to use this option to mean ``do not +cross filesystem mount points.'' +.It Fl Z , Fl Fl compress , Fl Fl uncompress +Compress archive using compress. +.It Fl Fl strict +Do not enable GNU tar extensions such as long filenames and long link names. +.It Fl Fl atime-preserve +Preserve file access times. +.It Fl Fl chroot +.Fn chroot +to the current directory before extracting files. +Use with +.Fl x +and +.Fl h +to make absolute symlinks relative to the current directory. +.It Fl Fl unlink +Ignored, only accepted for compatibility with other +.Nm +implementations. +.Nm +always unlinks files before creating them. +.It Fl Fl use-compress-program Ar program +Use the named program as the program to decompress the input. +.It Fl Fl force-local +Do not interpret filenames that contain a +.Sq \&: +as remote files. +.It Fl Fl insecure +Normally +.Nm +ignores filenames that contain +.Dq .. +as a path component. +With this option, files that contain +.Dq .. +can be processed. +.It Fl Fl no-recursion +Cause files of type directory being copied or archived, or archive members of +type directory being extracted, to match only the directory file or archive +member and not the file hierarchy rooted at the directory. +.It Fl Fl timestamp Ar timestamp +Store all modification times in the archive with the +.Ar timestamp +given instead of the actual modification time of the individual archive member +so that repeatable builds are possible. +The +.Ar timestamp +can be a +.Pa pathname , +where the timestamps are derived from that file, a parseable date for +.Xr parsedate 3 +(this option is not yet available in the tools build), or an integer value +interpreted as the number of seconds from the Epoch. +.El +.Pp +The options +.Op Fl 014578 +can be used to select one of the compiled-in backup devices, +.Pa /dev/rstN . +.Sh FILES +.Bl -tag -width "/dev/rst0" +.It Pa /dev/rst0 +default archive name +.El +.Sh DIAGNOSTICS +.Nm +will exit with one of the following values: +.Bl -tag -width 2n +.It 0 +All files were processed successfully. +.It 1 +An error occurred. +.El +.Pp +Whenever +.Nm +cannot create a file or a link when extracting an archive or cannot +find a file while writing an archive, or cannot preserve the user +ID, group ID, file mode, or access and modification times when the +.Fl p +option is specified, a diagnostic message is written to standard +error and a non-zero exit value will be returned, but processing +will continue. +In the case where +.Nm +cannot create a link to a file, +.Nm +will not create a second copy of the file. +.Pp +If the extraction of a file from an archive is prematurely terminated +by a signal or error, +.Nm +may have only partially extracted the file the user wanted. +Additionally, the file modes of extracted files and directories may +have incorrect file bits, and the modification and access times may +be wrong. +.Pp +If the creation of an archive is prematurely terminated by a signal +or error, +.Nm +may have only partially created the archive which may violate the +specific archive format specification. +.Sh SEE ALSO +.Xr cpio 1 , +.Xr pax 1 +.Sh HISTORY +A +.Nm +command first appeared in +.At v7 . +.Sh AUTHORS +.An Keith Muller +at the University of California, San Diego. |