cut(1)cut(1)Namecut - cut out selected fields of each line of a file
Syntaxcut-clist [file1 file2...]
cut-flist [-dchar] [-s] [file1 file2...]
Description
Use the command to cut out columns from a table or fields from each
line of a file. 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). The command can be used as a filter.
If no files are given, the standard input is used.
Use to make horizontal ``cuts'' (by context) through a file, or to put
files together in columns. To reorder columns in a table, use and
Options
list Specifies ranges that must be a comma-separated list of
integer field numbers in increasing order. With optional -
indicates ranges as in the -o option of nroff/troff for
page ranges; for example, 1,4,7; 1-3,8; -5,10 (short for
1-5,10); or 3- (short for third through last field).
-clist Specifies character positions to be cut out. For example,
-c1-72 would pass the first 72 characters of each line.
-flist Specifies the fields to be cut out. For example, -f1,7
copies the first and seventh field only. Lines with no
field delimiters are passed through intact (useful for ta‐
ble subheadings), unless -s is specified.
-dchar Uses the specified character as the field delimiter.
Default is tab. Space or other characters with special
meaning to the shell must be quoted. The -d option is used
only in combination with the -f option, according to XPG3
and SVID2/SVID3.
-s Suppresses lines with no delimiter characters. Unless
specified, lines with no delimiters are passed through
untouched. Either the -c or -f option must be specified.
Examples
Mapping of user IDs to names:
cut -d: -f1,5 /etc/passwd
To set name to the current login name for the csh shell:
set name=`who am i | cut-f1 -d" "`
To set name to the current login name for the sh, sh5, and ksh shells:
name=`who am i | cut-f1 -d" "`
Diagnostics
"line too long" A line can have no more than 511 characters or
fields.
"bad list for c/f option"
Missing -c or -f 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.
See Alsogrep(1), paste(1)cut(1)