cut(1) cut(1)
NAME
cut - cut out selected fields of each line of a file
SYNOPSIS
cut -type [-dchar] [-s] [file1 file2 ...]
DESCRIPTION
Use cut to cut out columns from a table or fields from each
line of a file; in data base parlance, it implements the
projection of a relation. cut may be used as a filter; if
no files are given, the standard input is used.
type may be either c or f, followed by list. The fields as
specified by list may be fixed length, i.e., character
positions as on a punched card (-c flag option) or the
length may vary from line to line and be marked with a field
delimiter character like TAB (-f flag option). Note that
-type (i.e., either the -c or -f flag option) must be
specified.
The meanings of the flag options are:
list A comma-separated list of integer field numbers (in
increasing order), with optional - to indicate
ranges as in the -o flag option of nroff/troff for
page ranges; e.g., 1,4,7; 1-3,8; -5,10 (short for
1-5,10); or 3- (short for third through last
field).
-clist The list following -c (no space) specifies
character positions (e.g., -c1-72 would pass the
first 72 characters of each line).
-flist The list following -f is a list of fields assumed
to be separated in the file by a delimiter
character (see -d ); e.g., -f1,7 copies the first
and seventh field only. Lines with no field
delimiters will be passed through intact (useful
for table subheadings), unless -s is specified.
-dchar The character following -d is the field delimiter
(-f flag option only). Default is TAB. Space or
other characters with special meaning to the shell
must be quoted.
-s Suppresses lines with no delimiter characters in
case of -f flag option. Unless specified, lines
with no delimiters will be passed through
untouched.
HINTS
Use grep(1) to make horizontal cuts (by context) through a
Page 1 (last mod. 1/16/87)
cut(1) cut(1)
file, or paste(1) to put files together column-wise (i.e.,
horizontally). To reorder columns in a table, use cut and
paste.
EXAMPLE
cut -d: -f1,5 /etc/passwd
mapping of user IDs to names.
name=`who am i | cut -f1 -d" "`
to set name to current login name.
DIAGNOSTICS
Line too long
A line can have no more than 1023 characters or fields.
Bad list for c/f flag option
Missing -c or -f flag option or incorrectly specified list.
No error occurs if a line has fewer fields than the list calls
for.
No fields
The list is empty.
FILES
/usr/bin/cut
SEE ALSO
grep(1, paste(1).
Page 2 (last mod. 1/16/87)