summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAssaf Gordon <assafgordon@gmail.com>2013-03-06 15:53:16 -0500
committerPádraig Brady <P@draigBrady.com>2013-04-10 14:34:52 +0100
commit4114c93af398d7aecb5eb253f90d9b4cc0785643 (patch)
treee12c863d7a3ac08a1abec7c8fc8a4be6991fde9c /doc
parentec02161aefab06bec919d10396900ce6fe87390d (diff)
downloadcoreutils-4114c93af398d7aecb5eb253f90d9b4cc0785643.tar.xz
csplit: add the --suppress-matched option
With --suppress-matched, the lines that match the pattern will not be printed in the output files. I.E. the first line from the second and subsequent splits will be suppressed. * src/csplit.c: process_regexp(),process_line_count(): Don't output the matched lines. Since csplit includes "up to but not including" matched lines in each split, the first line (in the next group) is the matched line - so just skip it. main(): Handle new option. usage(): Mention new option. * doc/coreutils.texi (csplit invocation): Mention new option, examples. * tests/misc/csplit-suppress-matched.pl: New test script. * tests/local.mk: Reference the new test. * NEWS: Mention new feature.
Diffstat (limited to 'doc')
-rw-r--r--doc/coreutils.texi25
1 files changed, 25 insertions, 0 deletions
diff --git a/doc/coreutils.texi b/doc/coreutils.texi
index 4cfe4c50c..8e4bacfb7 100644
--- a/doc/coreutils.texi
+++ b/doc/coreutils.texi
@@ -3607,6 +3607,12 @@ long instead of the default 2.
@opindex --keep-files
Do not remove output files when errors are encountered.
+@item --suppress-matched
+@opindex --suppress-matched
+Do not output lines matching the specified @var{pattern}.
+I.E. suppress the boundary line from the start of the second
+and subsequent splits.
+
@item -z
@itemx --elide-empty-files
@opindex -z
@@ -3683,6 +3689,25 @@ $ head xx*
14
@end example
+Example of splitting input by empty lines:
+
+@example
+$ csplit --suppress-matched @var{input.txt} '/^$/' '@{*@}'
+@end example
+
+@c
+@c TODO: "uniq" already supports "--group".
+@c when it gets the "--key" option, uncomment this example.
+@c
+@c Example of splitting input file, based on the value of column 2:
+@c
+@c @example
+@c $ cat @var{input.txt} |
+@c sort -k2,2 |
+@c uniq --group -k2,2 |
+@c csplit -m '/^$/' '@{*@}'
+@c @end example
+
@node Summarizing files
@chapter Summarizing files