Jump to content

cut (Unix)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by DixonDBot (talk | contribs) at 16:20, 5 December 2010 (r2.6.5) (robot Adding: ro:Cut (Unix)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In computing, cut is a Unix command line utility which is used to extract sections from each line of input — usually from a file.

Extraction of line segments can typically be done by bytes (-b), characters (-c), or fields (-f) separated by a delimiter (-d — the tab character by default). A range must be provided in each case which consists of one of N, N-M, N- (N to the end of the line), or -M (beginning of the line to M), where N and M are counted from 1 (there is no zeroth value). Since version 6, an error is thrown if you include a zeroth value. Prior to this the value was ignored and assumed to be 1.

Examples

Assuming a file named file containing the lines:

foo:bar:baz:qux:quux
one:two:three:four:five:six:seven
alpha:beta:gamma:delta:epsilon:zeta:eta:teta:iota:kappa:lambda:mu
the quick brown fox jumps over the lazy dog

To output the fourth through tenth characters of each line:

% cut -c 4-10 file

This gives the output:

:bar:ba
:two:th
ha:beta
 quick

To output the fifth field through the end of the line of each line using the colon character as the field delimiter:

% cut -d ":" -f 5- file

This gives the output:

quux
five:six:seven
epsilon:zeta:eta:teta:iota:kappa:lambda:mu
the quick brown fox jumps over the lazy dog

(note that as the colon character is not found in the last line the entire line is shown)

To output the third field of each line using space as the field delimiter:

%cut -d " " -f 3 file

This gives the output:

foo:bar:baz:qux:quux
one:two:three:four:five:six:seven
alpha:beta:gamma:delta:epsilon:zeta:eta:teta:iota:kappa:lambda:mu
brown

(note that as the space character is not found in the first three lines these entire lines are shown)


See also