]> Dogcows Code - chaz/tar/commitdiff
Update
authorSergey Poznyakoff <gray@gnu.org.ua>
Fri, 2 Jun 2006 08:01:33 +0000 (08:01 +0000)
committerSergey Poznyakoff <gray@gnu.org.ua>
Fri, 2 Jun 2006 08:01:33 +0000 (08:01 +0000)
NEWS
TODO
doc/tar.texi

diff --git a/NEWS b/NEWS
index 76917fb4a7a9de9dd48d86b67b259d915c1de5ae..f5029440df2c4c18a717c72b896fb9f0f7a1ae15 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -53,10 +53,28 @@ with UNIX98.  This ends the transition period started with version 1.14.
   
 * New features
 
+** New option --transform allows to transform file names before storing them
+in the archive or member names before extracting.  The option takes a
+sed replace expression as its argument.  For example,
+
+  tar cf foo.tar --transform 's,^,prefix/'
+
+will add 'prefix/' to all file names stored in foo.tar.
+
+** --strip-components option works when deleting and comparing.
+
+** New option --show-transformed-names enables display of transformed file
+or archive.  In particular, when creating archive in verbose mode,
+the option lists member names as stored in the archive.  It
+generalizes --show-stored-names option, introduced in 1.15.90.  In
+particular, when creating an archive in verbose mode, it lists member
+names as stored in the archive, i.e., with any eventual prefixes
+removed and file name transformations applied.  The option is useful,
+for example, while comparing `tar cv' and `tar tv' outputs.
+
 ** New incremental snapshot file format keeps information about file names 
 as well as that about directories.
 
-
 \f
 version 1.15.90 - Sergey Poznyakoff, 2006-02-19
 
diff --git a/TODO b/TODO
index f5ca51baa80d6d521328581d22c38345e59d2d41..6b0dbc6817215923c4814b19ab9ff930c8630a3e 100644 (file)
--- a/TODO
+++ b/TODO
@@ -17,18 +17,6 @@ so that the GNU extensions (--incremental, --label and
 * Add support for a 'pax' command that conforms to POSIX 1003.1-2001.
   This would unify paxutils with tar.
 
-* Remove command-line incompatibilities between GNU tar and UNIX tar
-  as specified by UNIX98.  The main problem is:
-
-     l   GNU tar doesn't cross filesystem boundaries.
-        UNIX98 tar warns if all links cannot be resolved.
-          (GNU tar --check-links option)
-
-  Currently tar prints a warning when this option is used. Sometime
-  in the future its semantics will be changed to that of --check-links.
-  In the meanwhile we should announce a phase-in period where "l"
-  changes in semantics.
-
 * Interoperate better with Joerg Schilling's star implementation.
 
 * Add an option to remove files that compare successfully.
index 74f585b3d225c6e456be44eef8098916dc8033da..332269a76d00bdde148665ada63dfbf07a511622 100644 (file)
@@ -195,6 +195,7 @@ Advanced @GNUTAR{} Operations
 * concatenate::
 * delete::
 * compare::
+* quoting styles::
 
 How to Add Files to Existing Archives: @option{--append}
 
@@ -2593,7 +2594,7 @@ code. @xref{Writing to an External Program}.
 @opindex no-quote-chars, summary
 @item --no-quote-chars=@var{string}
 Do not quote characters from @var{string}, even if the selected
-quoting style implies they should be quoted (@FIXME-pxref{Quoting Styles}).
+quoting style implies they should be quoted (@pxref{quoting styles}).
 
 @opindex no-recursion, summary
 @item --no-recursion
@@ -2715,12 +2716,12 @@ This option does not affect extraction from archives.
 @opindex quote-chars, summary
 @item --quote-chars=@var{string}
 Always quote characters from @var{string}, even if the selected
-quoting style would not quote them (@FIXME-pxref{Quoting Styles}).
+quoting style would not quote them (@pxref{quoting styles}).
 
 @opindex quoting-style, summary
 @item --quoting-style=@var{style}
 Set quoting style to use when printing member and file names
-(@FIXME-pxref{Quoting Styles}). Valid @var{style} values are:
+(@pxref{quoting styles}). Valid @var{style} values are:
 @code{literal}, @code{shell}, @code{shell-always}, @code{c},
 @code{escape}, @code{locale}, and @code{clocale}. Default quoting
 style is @code{escape}, unless overridden while configuring the
@@ -3670,6 +3671,7 @@ it still introduces the info in the chapter correctly : ).}
 * concatenate::
 * delete::
 * compare::
+* quoting styles::
 @end menu
 
 @node Operations
@@ -4175,6 +4177,117 @@ The spirit behind the @option{--compare} (@option{--diff}, @option{-d}) option i
 archive represents the current state of files on disk, more than validating
 the integrity of the archive media.  For this later goal, @xref{verify}.
 
+@node quoting styles
+@subsection Quoting Member Names
+@UNREVISED{}
+
+@smallexample
+@group
+$ @kbd{ls}
+a\ttab
+a\nnewline
+a\ space
+a"double"quote
+a'single'quote
+a\\backslash
+$ @kbd{tar cf arch .}
+@end group
+@end smallexample
+
+@smallexample
+@group
+$ @kbd{tar tf arch --quoting-style=literal}
+./
+./a space
+./a'single'quote
+./a"double"quote
+./a\backslash
+./a    tab
+./a
+newline
+@end group
+@end smallexample
+
+@smallexample
+@group
+$ @kbd{tar tf arch --quoting-style=shell}
+./
+'./a space'
+'./a'\''single'\''quote'
+'./a"double"quote'
+'./a\backslash'
+'./a   tab'
+'./a
+newline'
+@end group
+@end smallexample
+
+@smallexample
+@group
+$ @kbd{tar tf arch --quoting-style=shell-always}
+'./'
+'./a space'
+'./a'\''single'\''quote'
+'./a"double"quote'
+'./a\backslash'
+'./a   tab'
+'./a
+newline'
+@end group
+@end smallexample
+
+@smallexample
+@group
+$ @kbd{tar tf arch --quoting-style=c}
+"./"
+"./a space"
+"./a'single'quote"
+"./a\"double\"quote"
+"./a\\backslash"
+"./a\ttab"
+"./a\nnewline"
+@end group
+@end smallexample
+
+@smallexample
+@group
+$ @kbd{tar tf arch --quoting-style=escape}
+./
+./a space
+./a'single'quote
+./a"double"quote
+./a\\backslash
+./a\ttab
+./a\nnewline
+@end group
+@end smallexample
+
+@smallexample
+@group
+$ @kbd{tar tf arch --quoting-style=locale}
+`./'
+`./a space'
+`./a\'single\'quote'
+`./a"double"quote'
+`./a\\backslash'
+`./a\ttab'
+`./a\nnewline'
+@end group
+@end smallexample
+
+@smallexample
+@group
+$ @kbd{tar tf arch --quoting-style=clocale}
+"./"
+"./a space"
+"./a'single'quote"
+"./a\"double\"quote"
+"./a\\backslash"
+"./a\ttab"
+"./a\nnewline"
+@end group
+@end smallexample
+
 @node create options
 @section Options Used by @option{--create}
 
This page took 0.044745 seconds and 4 git commands to generate.