[BACK]Return to wc.1 CVS log [TXT][DIR] Up to [local] / src / usr.bin / wc

Annotation of src/usr.bin/wc/wc.1, Revision 1.19

1.19    ! sobrado     1: .\"    $OpenBSD: wc.1,v 1.18 2007/05/31 19:20:20 jmc Exp $
1.5       millert     2: .\"
                      3: .\" Copyright (c) 1991, 1993
                      4: .\"    The Regents of the University of California.  All rights reserved.
1.1       deraadt     5: .\"
                      6: .\" This code is derived from software contributed to Berkeley by
                      7: .\" the Institute of Electrical and Electronics Engineers, Inc.
                      8: .\"
                      9: .\" Redistribution and use in source and binary forms, with or without
                     10: .\" modification, are permitted provided that the following conditions
                     11: .\" are met:
                     12: .\" 1. Redistributions of source code must retain the above copyright
                     13: .\"    notice, this list of conditions and the following disclaimer.
                     14: .\" 2. Redistributions in binary form must reproduce the above copyright
                     15: .\"    notice, this list of conditions and the following disclaimer in the
                     16: .\"    documentation and/or other materials provided with the distribution.
1.12      millert    17: .\" 3. Neither the name of the University nor the names of its contributors
1.1       deraadt    18: .\"    may be used to endorse or promote products derived from this software
                     19: .\"    without specific prior written permission.
                     20: .\"
                     21: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     22: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     23: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     24: .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     25: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     26: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     27: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     28: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     29: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     30: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     31: .\" SUCH DAMAGE.
                     32: .\"
1.5       millert    33: .\"     from: @(#)wc.1 8.2 (Berkeley) 4/19/94
1.1       deraadt    34: .\"
1.19    ! sobrado    35: .Dd $Mdocdate: May 31 2007 $
1.1       deraadt    36: .Dt WC 1
                     37: .Os
                     38: .Sh NAME
                     39: .Nm wc
1.14      jmc        40: .Nd word, line, and byte or character count
1.1       deraadt    41: .Sh SYNOPSIS
                     42: .Nm wc
1.14      jmc        43: .Op Fl c | m
1.16      espie      44: .Op Fl hlw
1.1       deraadt    45: .Op Ar file ...
                     46: .Sh DESCRIPTION
                     47: The
1.9       aaron      48: .Nm
1.1       deraadt    49: utility reads one or more input text files, and, by
                     50: default, writes the number of lines, words, and bytes
                     51: contained in each input file to the standard output.
                     52: If more than one input file is specified,
                     53: a line of cumulative count(s) for all named files is output on a
1.5       millert    54: separate line following the last file count.
1.9       aaron      55: .Nm
1.11      deraadt    56: considers a word to be a maximal string of characters delimited by
                     57: whitespace.
1.9       aaron      58: Whitespace characters are the set of characters for which the
1.5       millert    59: .Xr isspace 3
                     60: function returns true.
1.1       deraadt    61: .Pp
1.7       aaron      62: The options are as follows:
1.1       deraadt    63: .Bl -tag -width Ds
                     64: .It Fl c
                     65: The number of bytes in each input file
                     66: is written to the standard output.
1.16      espie      67: .It Fl h
                     68: Use unit suffixes: Byte, Kilobyte, Megabyte, Gigabyte, Terabyte,
                     69: Petabyte, and Exabyte in order to reduce the number of digits to four or fewer
                     70: using powers of 2 for sizes (K=1024, M=1048576, etc.).
1.1       deraadt    71: .It Fl l
                     72: The number of lines in each input file
                     73: is written to the standard output.
                     74: .It Fl m
                     75: The number of characters in each input file
                     76: is written to the standard output.
                     77: .It Fl w
                     78: The number of words in each input file
                     79: is written to the standard output.
                     80: .El
                     81: .Pp
                     82: When an option is specified,
1.9       aaron      83: .Nm
1.5       millert    84: only reports the information requested by that option.
                     85: The default action is equivalent to the flags
1.1       deraadt    86: .Fl clw
1.9       aaron      87: having been specified.
                     88: The
1.5       millert    89: .Fl c
                     90: and
                     91: .Fl m
                     92: options are mutually exclusive.
1.1       deraadt    93: .Pp
1.5       millert    94: If no file names are specified, the standard input is used
1.10      aaron      95: and a file name is not output.
                     96: The resulting output is one
1.1       deraadt    97: line of the requested count(s) with the cumulative sum
                     98: of all files read in via standard input.
                     99: .Pp
                    100: By default, the standard output contains a line for each
                    101: input file of the form:
                    102: .Bd -literal -offset indent
                    103: lines   words  bytes   file_name
                    104: .Ed
                    105: .Pp
1.14      jmc       106: If the
                    107: .Fl m
                    108: option is specified,
                    109: the number of bytes is replaced by
                    110: the number of characters in the listing above.
                    111: The counts for lines, words, and bytes
                    112: .Pq or characters
                    113: are integers separated by spaces.
1.1       deraadt   114: .Pp
1.19    ! sobrado   115: .Ex -std wc
1.5       millert   116: .Sh SEE ALSO
                    117: .Xr isspace 3
1.13      jmc       118: .Sh STANDARDS
1.17      jmc       119: The
                    120: .Nm
                    121: utility is compliant with the
                    122: .St -p1003.1-2004
                    123: specification.
                    124: .Pp
                    125: The flag
                    126: .Op Fl h
                    127: is an extension to that specification.
                    128: .Pp
1.5       millert   129: Historically, the
1.9       aaron     130: .Nm
1.5       millert   131: utility was documented to define a word as a ``maximal string of
1.13      jmc       132: characters delimited by
                    133: .Aq space ,
                    134: .Aq tab
                    135: or
                    136: .Aq newline
                    137: characters''.
1.5       millert   138: The implementation, however, didn't handle non-printing characters
                    139: correctly so that ``  ^D^E  '' counted as 6 spaces, while ``foo^D^Ebar''
                    140: counted as 8 characters.
                    141: 4BSD systems after 4.3BSD modified the implementation to be consistent
                    142: with the documentation.
1.9       aaron     143: This implementation defines a
                    144: .Dq word
                    145: in terms of the
1.5       millert   146: .Xr isspace 3
                    147: function, as required by
                    148: .St -p1003.2-92 .
1.9       aaron     149: .Sh HISTORY
                    150: A
                    151: .Nm
                    152: utility appeared in
                    153: .At v1 .