fmlcut(1fmli)


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

Synopsis

   fmlcut -clist [file . . .]
   

fmlcut -flist [-dchar] [-s] [file . . .]

Description

The fmlcut function cuts out columns from a table or fields from each line in file; in database parlance, it implements the projection of a relation. fmlcut can be used as a filter; if file is not specified or is -, the standard input is read. list specifies the fields to be selected. Fields can be fixed length (character positions) or variable length (separated by a field delimiter character), depending on whether -c or -f is specified.

Note that either the -c or the -f option must be specified.

The meanings of the options are:


list
A comma-separated list of integer field numbers (in increasing order), with optional - to indicate 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
If -c is specified, list specifies character positions (for example, -c1-72 would pass the first 72 characters of each line). Note that no space intervenes between -c and list.

-flist
If -f is specified, list is a list of fields assumed to be separated in the file by the default delimiter character, TAB, or by char if the -d option is specified. For example, -f1,7 copies the first and seventh field only. Lines with no delimiter characters are passed through intact (useful for table subheadings), unless -s is specified. Note that no space intervenes between -f and list. The following options can be used if you have specified -f.

-dchar
If -d is specified, char is the field delimiter. Space or other characters with special meaning to FMLI must be quoted. Note that no space intervenes between -d and char. The default field delimiter is TAB.

-s
Suppresses lines with no delimiter characters. If -s is not specified, lines with no delimiters will be passed through untouched.

Examples

fmlcut -d: -f1,5 /etc/passwd gets login IDs and names

`who am i | fmlcut -f1 -d" "` gets the current login name

Diagnostics

fmlcut returns the following exit values:

0 when the selected field is successfully cut out
2 on syntax errors

The following error messages may be displayed on the FMLI message line:


ERROR: line too long
A line has more than 1023 characters or fields, or there is no new-line character.

ERROR: 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.

ERROR: no fields
The list is empty.

ERROR: no delimiter
Missing char on -d option.

Notices

fmlcut cannot correctly process lines longer than 1023 characters, or lines with no newline character.

References

fmlgrep(1fmli)
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004