CUT(1) UNIX Programmer's Manual CUT(1) NAME cut - cut out selected fields of each line of a file SYNOPSIS cut -clist [file1 file2 ...] cut -flist [-dchar] [-s] [file1 file2 ...] DESCRIPTION Use _c_u_t 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 _l_i_s_t can be fixed length, i.e., 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 _t_a_b (-f option). _C_u_t can be used as a filter; if no files are given, the standard input is used. The meanings of the options are: _l_i_s_t A comma-separated list of integer field numbers (in increasing order), with optional - to indicate ranges as in the -o option of _n_r_o_f_f/_t_r_o_f_f for page ranges; e.g., 1,4,7; 1-3,8; -5,10 (short for 1-5,10); or 3- (short for third through last field). -c_l_i_s_t The _l_i_s_t following -c (no space) specifies charac- ter positions (e.g., -c1-72 would pass the first 72 characters of each line). -f_l_i_s_t The _l_i_s_t following -f is a list of fields assumed to be separated in the file by a delimiter charac- ter (see -d ); e.g. , -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. -d_c_h_a_r The character following -d is the field delimiter (-f option only). Default is _t_a_b. Space or other characters with special meaning to the shell must be quoted. -s Suppresses lines with no delimiter characters in case of -f option. Unless specified, lines with no delimiters will be passed through untouched. Either the -c or -f option must be specified. HINTS Use _g_r_e_p(1) to make horizontal ``cuts'' (by context) through a file, or _p_a_s_t_e(1) to put files together column-wise (i.e., horizontally). To reorder columns in a table, use _c_u_t and Printed 12/27/86 1 CUT(1) UNIX Programmer's Manual CUT(1) _p_a_s_t_e. EXAMPLES cut -d: -f1,5 /etc/passwd mapping of user IDs to names name=`who am i | cut -f1 -d" "` to set name to current login name. DIAGNOSTICS _l_i_n_e _t_o_o _l_o_n_g A line can have no more than 511 characters or fields. _b_a_d _l_i_s_t _f_o_r _c/_f _o_p_t_i_o_n Missing -c or -f option or incorrectly specified _l_i_s_t. No error occurs if a line has fewer fields than the _l_i_s_t calls for. _n_o _f_i_e_l_d_s The _l_i_s_t is empty. SEE ALSO grep(1), paste(1). Printed 12/27/86 2