cut - cut out selected fields of each line of a file


     cut -b list [-n] [file...]

     cut -c list [file...]

     cut -f list [-d delim] [-s] [file...]


     Use the cut utility 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

     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.


     The following options are supported:

     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 would pass the first 72 bytes of each
           line). When -b and  -n  are  used  together,  list  is
           adjusted so that no multi-byte character is split.

     -c list
           The list following -c  specifies  character  positions
           (for  instance, -c1-72 would pass the first 72 charac-
           ters of each line).

     -d delim
           The character following -d is the field delimiter  (-f
           option  only).  Default is tab. Space or other charac-
           ters 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.

     -n    Do not split characters. When -b list and -n are  used
           together, list is adjusted so that no multi-byte char-
           acter is split.

     -s    Suppresses lines with no delimiter characters in  case
           of  -f  option. Unless specified, lines with no delim-
           iters will be passed through untouched.


     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.


     See largefile(5) for the description of the behavior of  cut
     when  encountering files greater than or equal to 2 Gbyte (2
    **31 bytes).


     Example 1: Mapping user IDs

     A mapping of user IDs to names follows:

     example% cut -d: -f1,5 /etc/passwd

     Example 2: Setting current login name

     To set name to current login name:

     example$ name=`who am i | cut -f1 -d' '`


     See environ(5) for descriptions of the following environment
     variables  that  affect  the execution of cut: LANG, LC_ALL,


     The following exit values are returned:

     0     All input files were output successfully.

     >0    An error occurred.


     See attributes(5) for descriptions of the  following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Availability                | SUNWcsu                     |
    | CSI                         | Enabled                     |
    | Interface Stability         | Standard                    |


     grep(1), paste(1), attributes(5), environ(5),  largefile(5),


     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 mul-
           tiple 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

Man(1) output converted with man2html