xref: /dflybsd-src/usr.bin/split/split.1 (revision f1e3af6c0d9fb009456c1ad7a10c323acbf7022f)
1.\" Copyright (c) 1990, 1991, 1993, 1994
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 4. Neither the name of the University nor the names of its contributors
13.\"    may be used to endorse or promote products derived from this software
14.\"    without specific prior written permission.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26.\" SUCH DAMAGE.
27.\"
28.\"	@(#)split.1	8.3 (Berkeley) 4/16/94
29.\" $FreeBSD: src/usr.bin/split/split.1,v 1.3.2.6 2003/04/21 21:16:25 andreas Exp $
30.\" $DragonFly: src/usr.bin/split/split.1,v 1.4 2005/08/30 21:25:35 liamfoy Exp $
31.\"
32.Dd April 16, 1994
33.Dt SPLIT 1
34.Os
35.Sh NAME
36.Nm split
37.Nd split a file into pieces
38.Sh SYNOPSIS
39.Nm
40.Op Fl a Ar suffix_length
41.Op Fl b Ar byte_count[k|m]
42.Op Fl l Ar line_count
43.Op Fl p Ar pattern
44.Op Ar file Op Ar name
45.Sh DESCRIPTION
46The
47.Nm
48utility reads the given
49.Ar file
50and breaks it up into files of 1000 lines each.
51If
52.Ar file
53is a single dash
54.Pq Sq Fl
55or absent,
56.Nm
57reads from the standard input.
58.Pp
59The options are as follows:
60.Bl -tag -width Ds
61.It Fl a Ar suffix_length
62Use
63.Ar suffix_length
64letters to form the suffix of the file name.
65.It Fl b Ar byte_count[k|m]
66Create smaller files
67.Ar byte_count
68bytes in length.
69If
70.Dq Li k
71is appended to the number, the file is split into
72.Ar byte_count
73kilobyte pieces.
74If
75.Dq Li m
76is appended to the number, the file is split into
77.Ar byte_count
78megabyte pieces.
79.It Fl l Ar line_count
80Create smaller files
81.Ar n
82lines in length.
83.It Fl p Ar pattern
84The file is split whenever an input line matches
85.Ar pattern ,
86which is interpreted as an extended regular expression.
87The matching line will be the first line of the next output file.
88This option is incompatible with the
89.Fl b
90and
91.Fl l
92options.
93.El
94.Pp
95If additional arguments are specified, the first is used as the name
96of the input file which is to be split.
97If a second additional argument is specified, it is used as a prefix
98for the names of the files into which the file is split.
99In this case, each file into which the file is split is named by the
100prefix followed by a lexically ordered suffix using
101.Ar suffix_length
102characters in the range
103.Dq Li a-z .
104If
105.Fl a
106is not specified, two letters are used as the suffix.
107.Pp
108If the
109.Ar name
110argument is not specified, the file is split into lexically ordered
111files named with prefix
112.Dq Li x
113and with suffixes as above.
114.Sh SEE ALSO
115.Xr re_format 7
116.Sh STANDARDS
117The
118.Nm
119utility conforms to
120.St -p1003.1-2001 .
121.Sh HISTORY
122A
123.Nm
124command appeared in
125.At v3 .
126.Sh BUGS
127The maximum line length for matching patterns is 65536.
128