Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Aug 1997 03:00:38 +0200 (MESZ)
From:      Robert Eckardt <roberte@MEP.Ruhr-Uni-Bochum.de>
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   gnu/4385: un- and unclearly documented options in tar
Message-ID:  <199708260100.DAA07424@ghost.mep.ruhr-uni-bochum.de>
Resent-Message-ID: <199708260110.SAA26116@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         4385
>Category:       gnu
>Synopsis:       un- and unclearly documented options in tar
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Class:          doc-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Aug 25 18:10:01 PDT 1997
>Last-Modified:
>Originator:     Robert Eckardt
>Organization:
>Release:        FreeBSD 2.2.2-RELEASE i386
>Environment:

	tar and tar.1 from 2.2.2-RELEASE CD (WC)

>Description:

	Some options in tar (esp. --newer-mtime) are undocumented.
	--checkpoint is wrongly documented. Formatting of man-page
	goes wrong in serveral places. Date/time format for options,
	which require one, is undocumented.

>How-To-Repeat:

	man tar
	tar --help

>Fix:
	
	Fix attached as unified diff relative to /usr/src below.

diff -ru2 gnu/usr.bin/tar-2.2.2/getdate.y gnu/usr.bin/tar/getdate.y
--- gnu/usr.bin/tar-2.2.2/getdate.y	Mon Aug 25 00:57:07 1997
+++ gnu/usr.bin/tar/getdate.y	Mon Aug 25 02:40:00 1997
@@ -479,4 +479,5 @@
     { "idlw",	tZONE,     HOUR(12) },	/* International Date Line West */
     { "cet",	tZONE,     -HOUR(1) },	/* Central European */
+    { "cest",	tDAYZONE,  -HOUR(1) },	/* Central European Summer */
     { "met",	tZONE,     -HOUR(1) },	/* Middle European */
     { "mewt",	tZONE,     -HOUR(1) },	/* Middle European Winter */
diff -ru2 gnu/usr.bin/tar-2.2.2/tar.1 gnu/usr.bin/tar/tar.1
--- gnu/usr.bin/tar-2.2.2/tar.1	Mon Aug 25 00:57:08 1997
+++ gnu/usr.bin/tar/tar.1	Tue Aug 26 02:46:20 1997
@@ -3,8 +3,9 @@
 .\"
 .\"	Written by John F. Woods <jfw@jfwhome.funhouse.com>
+.\"	Updated by Robert Eckardt <roberte@mep.ruhr-uni-bochum.de>
 .\"
 .\"	$Id: tar.1,v 1.6 1996/08/13 00:13:49 chuckr Exp $
 .\"
-.Dd 6 August 1994
+.Dd 25 August 1997
 .Os FreeBSD
 .Dt TAR 1
@@ -14,8 +15,7 @@
 tape archiver; manipulate "tar" archive files
 .Sh SYNOPSIS
-.Nm
-.Op Cm Bq -
-.Op Cm bundled-options
-.Op Ar [gnu-style-flags]
+.Nm tar
+.Op [-] Ns Ar bundled-options
+.Op Ar gnu-style-flags
 .Op Ar tarfile
 .Op Ar blocksize
@@ -24,5 +24,5 @@
 .Op Fl C Ar directory-name
 .Sh DESCRIPTION
-.Nm
+.Nm Tar
 is short for 
 .Dq tape archiver,
@@ -124,5 +124,6 @@
 .It Fl -help
 Prints a message listing and briefly describing all the command
-options to tar.
+options to
+.Nm tar.
 .It Fl -atime-preserve
 Restore the access times on files which are written to tape (note that
@@ -140,5 +141,5 @@
 for extraction.
 .It Fl -checkpoint
-Print directory names while reading the archive.
+Print number of buffer reads/writes while reading/writing the archive.
 .It Fl f Ar [hostname:]file
 .It Fl -file  Ar [hostname:]file
@@ -155,4 +156,6 @@
 on a remote machine. "-" may be used is a filename, for reading
 or writing to/from stdin/stdout.
+.It Fl -force-local
+Archive file is local even if it has a colon
 .It Fl F Ar file
 .It Fl -info-script Ar file
@@ -198,8 +201,13 @@
 .It Fl -multi-volume
 Create/list/extract multi-volume archive.
+.It Fl -volno-file Ar file
+File name with volume number to start with.
 .It Fl N Ar date
 .It Fl -after-date Ar date
 .It Fl -newer Ar date
-Only store files newer than
+Only store files with creation time newer than
+.Ar date .
+.It Fl -newer-mtime Ar date
+Only store files with modifiction time newer than
 .Ar date .
 .It Fl o
@@ -229,4 +237,6 @@
 .It Fl -preserve-order
 List of names to extract is sorted to match archive.
+.It Fl -show-omitted-dirs
+Show directories which were omitted while processing the archive.
 .It Fl S
 .It Fl -sparse
@@ -243,9 +253,13 @@
 .Fl C.
 .It Fl -totals
-Prints total bytes written with --create.
+Prints total bytes written with
+.It Fl -create.
 .It Fl v
 .It Fl -verbose
-Lists files written to archive with --create or extracted with --extract;
-lists file protection information along with file names with --list.
+Lists files written to archive with
+.It Fl -create or extracted with
+.It Fl -extract;
+lists file protection information along with file names with
+.It Fl -list.
 .It Fl V Ar volume-name
 .It Fl -label Ar volume-name
@@ -253,5 +267,7 @@
 .Ar volume-name .
 .It Fl -version
-Print tar program version number.
+Print
+.Nm tar
+program version number.
 .It Fl w
 .It Fl -interactive
@@ -290,6 +306,4 @@
 .It Fl [0-7][lmh]
 Specify tape drive and density.
-.It Fl -norecurse
-Don't recurse into subdirectories when creating.
 .It Fl -unlink
 Unlink files before creating them.
@@ -300,5 +314,5 @@
 .Dl tar cfb /dev/rst0 20 bert ernie
 or
-.Dl tar --create --file /dev/rst0 --block-size 20 bert ernie
+.Dl tar\ --create\ --file\ /dev/rst0\ --block-size\ 20\ bert\ ernie
 Note that the
 .Fl f
@@ -314,5 +328,5 @@
 To extract all the C sources and headers from an archive named
 "backup.tar", type
-.Dl tar xf backup.tar "*.[ch]"
+.Dl tar xf backup.tar '*.[ch]'
 Note that the pattern must be quoted to prevent the shell from
 attempting to expand it according the files in the current working
@@ -321,13 +335,14 @@
 .Pp
 To move file hierarchies, use a command line like this:
-.Bd -literal
-tar tar -cf - -C srcdir . | tar xpf - -C destdir
-.Ed
+.Dl tar\ -cf\ -\ -C\ srcdir\ .\ |\ tar\ xpf\ -\ -C\ destdir
 .Pp
 To create a compressed archive on diskette, using gzip, use a command-line like
-.Dl tar --block-compress -z -c -v -f /dev/rfd1a -b 36 tar/
+.Pp
+.Dl tar\ --block-compress\ -z\ -c\ -v\ -f\ /dev/rfd1a\ -b\ 36\ srcdir/
+.Pp
 Note that you cannot mix bundled flags and --style flags; you can use
 single-letter flags in the manner above, rather than having to type
-.Dl tar --block-compress --gzip --verbose --file /dev/rfd1a --block-size 20 tar/
+.Dl tar\ --block-compress\ --gzip\ --create\ --verbose\ --file\ /dev/rfd1a\
+ --block-size\ 36\ srcdir/
 .Pp
 The above-created diskette can be listed with
@@ -340,10 +355,26 @@
 .Dl cat archive2.tar >> archive1.tar
 because of the end-of-file block at the end of a tar archive).
+.Pp
+To archive all files from the directory srcdir, which were modified
+after Feb. 9th 1997, 13:00 h, use
+.Dl tar\ -c\ -f\ backup.tar\ --newer-mtime\ 'Feb\ 9\ 13:15\ 1997'\ srcdir/
+
+Other possible time specifications are '02/09/97 13:15', '1997-02-09
+13:15', '13:15 9 Feb 1997', '9 Feb 1997 13:15', 'Feb. 9, 1997 1:15pm', '3 weeks
+ago' or 'May first Sunday'.
+To specify the correct time zone use either e.g. `13:15 CEST' or `13:15+200'.
+
 .Sh ENVIRONMENT
-The tar program examines the following environment variables.
+The
+.Nm tar
+program examines the following environment variables.
 .Bl -tag -width "POSIXLY-CORRECT"
 .It POSIXLY-CORRECT
-Normally, tar will process flag arguments that appear in the file list
-If set in the environment, this causes tar to consider the first
+Normally,
+.Nm tar
+will process flag arguments that appear in the file list.
+If set in the environment, this causes
+.Nm tar
+to consider the first
 non-flag argument to terminate flag processing, as per the POSIX specification.
 .It SHELL
@@ -373,5 +404,7 @@
 .Sh HISTORY
 The tar format has a rich history, dating back to Sixth Edition UNIX.
-The current implementation of tar is the GNU implementation, which
+The current implementation of
+.Nm tar
+is the GNU implementation, which
 originated as the public-domain tar written by John Gilmore.
 .Sh AUTHORS
diff -ru2 gnu/usr.bin/tar-2.2.2/tar.c gnu/usr.bin/tar/tar.c
--- gnu/usr.bin/tar-2.2.2/tar.c	Mon Aug 25 00:57:08 1997
+++ gnu/usr.bin/tar/tar.c	Tue Aug 26 02:44:48 1997
@@ -709,5 +709,5 @@
 -B, --read-full-blocks	reblock as we read (for reading 4.2BSD pipes)\n\
 -C, --directory DIR	change to directory DIR\n\
---checkpoint		print directory names while reading the archive\n\
+--checkpoint		print number of buffer reads/writes\n\
 ", stdout);			/* KLUDGE */
   fprintf (stdout, "\
@@ -715,5 +715,5 @@
 	   DEF_AR_FILE);
   fputs ("\
---force-local		archive file is local even if has a colon\n\
+--force-local		archive file is local even if it has a colon\n\
 -F, --info-script F\n\
     --new-volume-script F run script at end of each tape (implies -M)\n\
@@ -731,6 +731,8 @@
 -m, --modification-time	don't extract file modified time\n\
 -M, --multi-volume	create/list/extract multi-volume archive\n\
+--volno-file F		use volume number to start with from file F\n\
 -N, --after-date DATE,\n\
-    --newer DATE	only store files newer than DATE\n\
+    --newer DATE	only store files with creation time newer than DATE\n\
+--newer-mtime DATE	only store files with modification time newer than DATE\n\
 -o, --old-archive,\n\
     --portability	write a V7 format archive, rather than ANSI format\n\
@@ -747,4 +749,5 @@
     --preserve-order	list of names to extract is sorted to match archive\n\
 --same-owner		create extracted files with the same ownership \n\
+--show-omitted-dirs	show omitted directories while processing the archive.\n\
 -S, --sparse		handle sparse files efficiently\n\
 -T, --files-from F	get names to extract or create from file F\n\
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708260100.DAA07424>