xref: /dflybsd-src/usr.bin/csplit/csplit.1 (revision b4f250886735b389781314eed589d8f101ab7646)
14c9d73a5SHiten Pandya.\" Copyright (c) 2002 Tim J. Robbins.
24c9d73a5SHiten Pandya.\" All rights reserved.
34c9d73a5SHiten Pandya.\"
44c9d73a5SHiten Pandya.\" Redistribution and use in source and binary forms, with or without
54c9d73a5SHiten Pandya.\" modification, are permitted provided that the following conditions
64c9d73a5SHiten Pandya.\" are met:
74c9d73a5SHiten Pandya.\" 1. Redistributions of source code must retain the above copyright
84c9d73a5SHiten Pandya.\"    notice, this list of conditions and the following disclaimer.
94c9d73a5SHiten Pandya.\" 2. Redistributions in binary form must reproduce the above copyright
104c9d73a5SHiten Pandya.\"    notice, this list of conditions and the following disclaimer in the
114c9d73a5SHiten Pandya.\"    documentation and/or other materials provided with the distribution.
124c9d73a5SHiten Pandya.\"
134c9d73a5SHiten Pandya.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
144c9d73a5SHiten Pandya.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
154c9d73a5SHiten Pandya.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
164c9d73a5SHiten Pandya.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
174c9d73a5SHiten Pandya.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
184c9d73a5SHiten Pandya.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
194c9d73a5SHiten Pandya.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
204c9d73a5SHiten Pandya.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
214c9d73a5SHiten Pandya.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
224c9d73a5SHiten Pandya.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
234c9d73a5SHiten Pandya.\" SUCH DAMAGE.
244c9d73a5SHiten Pandya.\"
254c9d73a5SHiten Pandya.\" $FreeBSD: src/usr.bin/csplit/csplit.1,v 1.6 2002/08/14 11:38:30 ru Exp $
264c9d73a5SHiten Pandya.\"
274c9d73a5SHiten Pandya.Dd June 19, 2004
284c9d73a5SHiten Pandya.Dt CSPLIT 1
294c9d73a5SHiten Pandya.Os
304c9d73a5SHiten Pandya.Sh NAME
314c9d73a5SHiten Pandya.Nm csplit
324c9d73a5SHiten Pandya.Nd split files based on context
334c9d73a5SHiten Pandya.Sh SYNOPSIS
344c9d73a5SHiten Pandya.Nm
354c9d73a5SHiten Pandya.Op Fl ks
364c9d73a5SHiten Pandya.Op Fl f Ar prefix
374c9d73a5SHiten Pandya.Op Fl n Ar number
384c9d73a5SHiten Pandya.Ar file args ...
394c9d73a5SHiten Pandya.Sh DESCRIPTION
404c9d73a5SHiten PandyaThe
414c9d73a5SHiten Pandya.Nm
424c9d73a5SHiten Pandyautility splits
434c9d73a5SHiten Pandya.Ar file
444c9d73a5SHiten Pandyainto pieces using the patterns
454c9d73a5SHiten Pandya.Ar args .
464c9d73a5SHiten PandyaIf
474c9d73a5SHiten Pandya.Ar file
484c9d73a5SHiten Pandyais
494c9d73a5SHiten Pandyaa dash
504c9d73a5SHiten Pandya.Pq Sq Fl ,
514c9d73a5SHiten Pandya.Nm
524c9d73a5SHiten Pandyareads from standard input.
534c9d73a5SHiten Pandya.Pp
544c9d73a5SHiten PandyaThe options are as follows:
554c9d73a5SHiten Pandya.Bl -tag -width indent
564c9d73a5SHiten Pandya.It Fl f Ar prefix
574c9d73a5SHiten PandyaGive created files names beginning with
584c9d73a5SHiten Pandya.Ar prefix .
594c9d73a5SHiten PandyaThe default is
604c9d73a5SHiten Pandya.Dq Pa xx .
614c9d73a5SHiten Pandya.It Fl k
624c9d73a5SHiten PandyaDo not remove output files if an error occurs or a
634c9d73a5SHiten Pandya.Dv HUP ,
644c9d73a5SHiten Pandya.Dv INT
654c9d73a5SHiten Pandyaor
664c9d73a5SHiten Pandya.Dv TERM
674c9d73a5SHiten Pandyasignal is received.
684c9d73a5SHiten Pandya.It Fl n Ar number
694c9d73a5SHiten PandyaUse
704c9d73a5SHiten Pandya.Ar number
714c9d73a5SHiten Pandyaof decimal digits after the
724c9d73a5SHiten Pandya.Ar prefix
734c9d73a5SHiten Pandyato form the file name.
744c9d73a5SHiten PandyaThe default is 2.
754c9d73a5SHiten Pandya.It Fl s
764c9d73a5SHiten PandyaDo not write the size of each output file to standard output as it is
774c9d73a5SHiten Pandyacreated.
784c9d73a5SHiten Pandya.El
794c9d73a5SHiten Pandya.Pp
804c9d73a5SHiten PandyaThe
814c9d73a5SHiten Pandya.Ar args
824c9d73a5SHiten Pandyaoperands may be a combination of the following patterns:
834c9d73a5SHiten Pandya.Bl -tag -width indent
844c9d73a5SHiten Pandya.It Xo
854c9d73a5SHiten Pandya.Sm off
864c9d73a5SHiten Pandya.Cm / Ar regexp Cm / Op Oo Cm + | - Oc Ar offset
874c9d73a5SHiten Pandya.Sm on
884c9d73a5SHiten Pandya.Xc
894c9d73a5SHiten PandyaCreate a file containing the input from the current line to (but not including)
904c9d73a5SHiten Pandyathe next line matching the given basic regular expression.
914c9d73a5SHiten PandyaAn optional
924c9d73a5SHiten Pandya.Ar offset
934c9d73a5SHiten Pandyafrom the line that matched may be specified.
944c9d73a5SHiten Pandya.It Xo
954c9d73a5SHiten Pandya.Sm off
964c9d73a5SHiten Pandya.Cm % Ar regexp Cm % Op Oo Cm + | - Oc Ar offset
974c9d73a5SHiten Pandya.Sm on
984c9d73a5SHiten Pandya.Xc
994c9d73a5SHiten PandyaSame as above but a file is not created for the output.
1004c9d73a5SHiten Pandya.It Ar line_no
1014c9d73a5SHiten PandyaCreate containing the input from the current line to (but not including)
1024c9d73a5SHiten Pandyathe specified line number.
1034c9d73a5SHiten Pandya.It Cm { Ns Ar num Ns Cm }
1044c9d73a5SHiten PandyaRepeat the previous pattern the specified number of times.
1054c9d73a5SHiten PandyaIf it follows a line number pattern, a new file will be created for each
1064c9d73a5SHiten Pandya.Ar line_no
1074c9d73a5SHiten Pandyalines,
1084c9d73a5SHiten Pandya.Ar num
1094c9d73a5SHiten Pandyatimes.
1104c9d73a5SHiten PandyaThe first line of the file is line number 1 for historic reasons.
1114c9d73a5SHiten Pandya.El
1124c9d73a5SHiten Pandya.Pp
1134c9d73a5SHiten PandyaAfter all the patterns have been processed, the remaining input data
1144c9d73a5SHiten Pandya(if there is any) will be written to a new file.
1154c9d73a5SHiten Pandya.Pp
1164c9d73a5SHiten PandyaRequesting to split at a line before the current line number or past the
1174c9d73a5SHiten Pandyaend of the file will result in an error.
1184c9d73a5SHiten Pandya.Sh ENVIRONMENT
1194c9d73a5SHiten PandyaThe
1204c9d73a5SHiten Pandya.Ev LANG , LC_ALL , LC_COLLATE
1214c9d73a5SHiten Pandyaand
1224c9d73a5SHiten Pandya.Ev LC_CTYPE
1234c9d73a5SHiten Pandyaenvironment variables affect the execution of
1244c9d73a5SHiten Pandya.Nm
1254c9d73a5SHiten Pandyaas described in
1264c9d73a5SHiten Pandya.Xr environ 7 .
12719fe1c42SSascha Wildner.Sh EXIT STATUS
12819fe1c42SSascha Wildner.Ex -std
1294c9d73a5SHiten Pandya.Sh EXAMPLES
1304c9d73a5SHiten PandyaSplit the
1314c9d73a5SHiten Pandya.Xr mdoc 7
1324c9d73a5SHiten Pandyafile
1334c9d73a5SHiten Pandya.Pa foo.1
1344c9d73a5SHiten Pandyainto one file for each section (up to 20):
1354c9d73a5SHiten Pandya.Pp
1364c9d73a5SHiten Pandya.Dl "csplit -k foo.1 '%^\e.Sh%' '/^\e.Sh/' '{20}'"
1374c9d73a5SHiten Pandya.Pp
1384c9d73a5SHiten PandyaSplit standard input after the first 99 lines and every 100 lines thereafter:
1394c9d73a5SHiten Pandya.Pp
1404c9d73a5SHiten Pandya.Dl "csplit -k - 100 '{19}'"
1414c9d73a5SHiten Pandya.Sh SEE ALSO
1424c9d73a5SHiten Pandya.Xr sed 1 ,
1434c9d73a5SHiten Pandya.Xr split 1 ,
1444c9d73a5SHiten Pandya.Xr re_format 7
1454c9d73a5SHiten Pandya.Sh STANDARDS
1464c9d73a5SHiten PandyaThe
1474c9d73a5SHiten Pandya.Nm
1484c9d73a5SHiten Pandyautility conforms to
1494c9d73a5SHiten Pandya.St -p1003.1-2001 .
1501847e88fSSascha Wildner.Sh HISTORY
1511847e88fSSascha WildnerA
1521847e88fSSascha Wildner.Nm
1536e61cee1SSascha Wildnercommand appeared in PWB
1546e61cee1SSascha Wildner.Ux .
1554c9d73a5SHiten Pandya.Sh AUTHORS
1564c9d73a5SHiten PandyaThe
1574c9d73a5SHiten Pandya.Nm
1584c9d73a5SHiten Pandyautility was written by
159*b4f25088SFranco Fichtner.An Tim J. Robbins Aq Mt tjr@FreeBSD.org .
160