xref: /freebsd/usr.bin/cut/cut.1 (revision 6e8394b8baa7d5d9153ab90de6824bcd19b3b4e1)
1.\" Copyright (c) 1989, 1990, 1993
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" This code is derived from software contributed to Berkeley by
5.\" the Institute of Electrical and Electronics Engineers, Inc.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\" 3. All advertising materials mentioning features or use of this software
16.\"    must display the following acknowledgement:
17.\"	This product includes software developed by the University of
18.\"	California, Berkeley and its contributors.
19.\" 4. Neither the name of the University nor the names of its contributors
20.\"    may be used to endorse or promote products derived from this software
21.\"    without specific prior written permission.
22.\"
23.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33.\" SUCH DAMAGE.
34.\"
35.\"     @(#)cut.1	8.1 (Berkeley) 6/6/93
36.\"
37.Dd June 6, 1993
38.Dt CUT 1
39.Os
40.Sh NAME
41.Nm cut
42.Nd select portions of each line of a file
43.Sh SYNOPSIS
44.Nm cut
45.Fl b Ar list
46.Op Fl n
47.Op Ar
48.Nm cut
49.Fl c Ar list
50.Op Ar
51.Nm cut
52.Fl f Ar list
53.Op Fl d Ar delim
54.Op Fl s
55.Op Ar
56.Sh DESCRIPTION
57The
58.Nm cut
59utility selects portions of each line (as specified by
60.Ar list  )
61from each
62.Ar file
63(or the standard input by default), and writes them to the
64standard output.
65The items specified by
66.Ar list
67can be in terms of column position or in terms of fields delimited
68by a special character. Column numbering starts from 1.
69.Pp
70.Ar list
71is a comma or whitespace separated set of increasing numbers and/or
72number ranges.
73Number ranges consist of a number, a dash
74.Pq Sq \- ,
75and a second number
76and select the fields or columns from the first number to the second,
77inclusive.
78Numbers or number ranges may be preceded by a dash, which selects all
79fields or columns from 1 to the first number.
80Numbers or number ranges may be followed by a dash, which selects all
81fields or columns from the last number to the end of the line.
82Numbers and number ranges may be repeated, overlapping, and in any order.
83It is not an error to select fields or columns not present in the
84input line.
85.Pp
86The options are as follows:
87.Bl -tag -width Fl
88.It Fl b Ar list
89The
90.Ar list
91specifies byte positions.
92.It Fl c Ar list
93The
94.Ar list
95specifies character positions.
96.It Fl d Ar delim
97Use the first character of
98.Ar delim
99as the field delimiter character instead of the tab character.
100.It Fl f Ar list
101The
102.Ar list
103specifies fields, delimited in the input by a single tab character.
104Output fields are separated by a single tab character.
105.It Fl n
106Do not split multi-byte characters.
107.It Fl s
108Suppresses lines with no field delimiter characters.
109Unless specified, lines with no delimiters are passed through unmodified.
110.El
111.Pp
112The
113.Nm cut
114utility exits with 0 on success or 1 if an error occurred.
115.Sh SEE ALSO
116.Xr paste 1
117.Sh STANDARDS
118The
119.Nm cut
120utility conforms to
121.St -p1003.2-92 .
122