Annotation of src/usr.bin/wc/wc.1, Revision 1.9
1.9 ! aaron 1: .\" $OpenBSD: wc.1,v 1.8 2000/03/06 03:17:40 aaron 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.
17: .\" 3. All advertising materials mentioning features or use of this software
18: .\" must display the following acknowledgement:
19: .\" This product includes software developed by the University of
20: .\" California, Berkeley and its contributors.
21: .\" 4. Neither the name of the University nor the names of its contributors
22: .\" may be used to endorse or promote products derived from this software
23: .\" without specific prior written permission.
24: .\"
25: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28: .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35: .\" SUCH DAMAGE.
36: .\"
1.5 millert 37: .\" from: @(#)wc.1 8.2 (Berkeley) 4/19/94
1.1 deraadt 38: .\"
1.5 millert 39: .Dd April 19, 1994
1.1 deraadt 40: .Dt WC 1
41: .Os
42: .Sh NAME
43: .Nm wc
1.4 aaron 44: .Nd word, line, and byte count
1.1 deraadt 45: .Sh SYNOPSIS
46: .Nm wc
47: .Op Fl c | Fl m
48: .Op Fl lw
49: .Op Ar file ...
50: .Sh DESCRIPTION
51: The
1.9 ! aaron 52: .Nm
1.1 deraadt 53: utility reads one or more input text files, and, by
54: default, writes the number of lines, words, and bytes
55: contained in each input file to the standard output.
56: If more than one input file is specified,
57: a line of cumulative count(s) for all named files is output on a
1.5 millert 58: separate line following the last file count.
1.9 ! aaron 59: .Nm
1.5 millert 60: considers a word to be a maximal string of characters delimited by white
1.9 ! aaron 61: space.
! 62: Whitespace characters are the set of characters for which the
1.5 millert 63: .Xr isspace 3
64: function returns true.
1.1 deraadt 65: .Pp
1.7 aaron 66: The options are as follows:
1.1 deraadt 67: .Bl -tag -width Ds
68: .It Fl c
69: The number of bytes in each input file
70: is written to the standard output.
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
94: The following operands are available:
95: .Bl -tag -width Ds
96: .It Ar file
97: A pathname of an input file.
98: .El
99: .Pp
1.5 millert 100: If no file names are specified, the standard input is used
101: and a file name is not output. The resulting output is one
1.1 deraadt 102: line of the requested count(s) with the cumulative sum
103: of all files read in via standard input.
104: .Pp
105: By default, the standard output contains a line for each
106: input file of the form:
107: .Bd -literal -offset indent
108: lines words bytes file_name
109: .Ed
110: .Pp
111: The counts for lines, words and bytes are integers separated
112: by spaces.
113: .Pp
114: The
1.9 ! aaron 115: .Nm
1.3 aaron 116: utility exits 0 on success or >0 if an error occurred.
1.5 millert 117: .Sh SEE ALSO
118: .Xr isspace 3
119: .Sh COMPATIBILITY
120: Historically, the
1.9 ! aaron 121: .Nm
1.5 millert 122: utility was documented to define a word as a ``maximal string of
123: characters delimited by <space>, <tab> or <newline> characters''.
124: The implementation, however, didn't handle non-printing characters
125: correctly so that `` ^D^E '' counted as 6 spaces, while ``foo^D^Ebar''
126: counted as 8 characters.
127: 4BSD systems after 4.3BSD modified the implementation to be consistent
128: with the documentation.
1.9 ! aaron 129: This implementation defines a
! 130: .Dq word
! 131: in terms of the
1.5 millert 132: .Xr isspace 3
133: function, as required by
134: .St -p1003.2-92 .
1.9 ! aaron 135: .Sh STANDARDS
! 136: The
! 137: .Nm
! 138: utility conforms to
! 139: .St -p1003.2-92 .
! 140: .Sh HISTORY
! 141: A
! 142: .Nm
! 143: utility appeared in
! 144: .At v1 .