cut(1)
NAME
cut − cut out selected fields of each line of a file
SYNOPSIS
cut −b list [ −n ] [ file ... ]
cut −c list [ file ... ]
cut −f list [ −d delim ] [ −s ] [ file ... ]
AVAILABILITY
SUNWcsu
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. The fields as specified by list can be fixed length, that is, character positions as on a punched card (−c option) or the length can vary from line to line and be marked with a field delimiter character like TAB (−f option). cut can be used as a filter.
Either the −b, −c, or −f option must be specified.
Use grep(1) to make horizontal “cuts” (by context) through a file, or paste(1) to put files together column-wise (that is, horizontally). To reorder columns in a table, use cut and paste.
OPTIONS
list A comma-separated or blank-character-separated list of integer field numbers (in increasing order), with optional − to indicate ranges (for instance, 1,4,7; 1−3,8; −5,10 (short for 1−5,10); or 3− (short for third through last field)).
−b list The list following −b specifies byte positions (for instance, −b1−72 −b1−72 would pass the first 72 bytes of each line). When −b and −n −n are used together, list is adjusted so that no multi-byte character is split. If −b is used, the input line should contain 1023 bytes or less.
−c list The list following −c specifies character positions (for instance, −c1−72 would pass the first 72 characters of each line).
−d delim The character following −d is the field delimiter (−f option only). Default is tab. Space or other characters with special meaning to the shell must be quoted. delim can be a multi-byte character.
−f list The list following −f is a list of fields assumed to be separated in the file by a delimiter character (see −d ); for instance, −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. If −f is used, the input line should contain 1023 characters or less.
−n Do not split characters. When −b list and −n are used together, list is adjusted so that no multi-byte character is split.
−s Suppresses lines with no delimiter characters in case of −f option. Unless specified, lines with no delimiters will be passed through untouched.
OPERANDS
The following operands are supported:
file A path name of an input file. If no file operands are specified, or if a file operand is −, the standard input will be used.
EXAMPLES
A mapping of user IDs to names follows:
example% cut −d: −f1,5 /etc/passwd
To set name to current login name:
example$ name=`who am i | cut −f1 −d’ ’`
ENVIRONMENT
See environ(5) for descriptions of the following environment variables that affect the execution of cut: LC_CTYPE, LC_MESSAGES, and NLSPATH.
EXIT STATUS
The following exit values are returned:
0 All input files were output successfully.
>0 An error occurred.
SEE ALSO
DIAGNOSTICS
cut: −n may only be used with −b
cut: −d may only be used with −f
cut: −s may only be used with −f
cut: cannot open <file>
Either file cannot be read or does not exist. If multiple files are present, processing continues.
cut: no delimiter specified
Missing delim on −d option.
cut: invalid delimiter
cut: no list specified
Missing list on −b, −c, or −f, option.
cut: invalid range specifier
cut: too many ranges specified
cut: range must be increasing
cut: invalid character in range
cut: internal error processing input
cut: invalid multibyte character
cut: unable to allocate enough memory
SunOS 5.5/SPARC — Last change: 1 Feb 1995