wc(1) — Commands
NAME
wc − Counts the lines, words, characters, and bytes in a file
SYNOPSIS
wc [-c| -m] [-lw] [file ...]
The wc command counts the lines, words, and characters or bytes in a file, or in the standard input if you do not specify any files, and writes the results to standard output. It also keeps a total count for all named files.
STANDARDS
Interfaces documented on this reference page conform to industry standards as follows:
wc: XPG4, XPG4−UNIX
Refer to the standards(5) reference page for more information about industry standards and associated tags.
FLAGS
-cCounts bytes in the input.
-lCounts lines in the input.
-mCounts characters in the input.
-wCounts words in the input.
PARAMETERS
fileSpecifies the pathname of the input file. If this parameter is omitted, standard input is used.
DESCRIPTION
A word is defined as a string of characters delimited by white space as defined in the X/Open Base Definitions for XCU4.
The wc command counts lines, words, and bytes by default. Use the appropriate flags to limit wc output. Specifying wc without flags is the equivalent of specifying wc -lwc. If any flags are specified, only the requested information is output.
The order in which counts appear in the output line is lines, words, bytes. If a flag is omitted, then the corresponding field in the output is omitted. If the -m flag is used, then character counts replace byte counts.
When you specify one or more files, wc displays the names of the files along with the counts. If standard input is used, then no file name is displayed.
ENVIRONMENT VARIABLES
The following environment variables affect the execution of wc:
LANGProvides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization variables contain an invalid setting, the utility behaves as if none of the variables had been defined.
LC_ALLIf set to a non-empty string value, overrides the values of all the other internationalization variables.
LC_CTYPEDetermines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments and input files) and which characters are defined as white space characters.
LC_MESSAGESDetermines the locale for the format and contents of diagnostic messages written to standard error and informative messages written to standard output.
NLSPATHDetermines the location of message catalogues for the processing of LC_MESSAGES.
EXAMPLES
1.To display the number of lines, words, and bytes in the file text, enter:
wc text
This results in the following output:
27 185 722 text
The numbers 27, 185, and 722 are the number of lines, words, and bytes, respectively, in the file text.
2.To display only one or two of the three counts include the appropriate flags. For example, the following command displays only line and byte counts:
wc -cl text
27 722 text
3.To count lines, words, and bytes in more than one file, use wc with more than one input file or with a file name pattern. For example, the following command can be issued in a directory containing the files text, text1, and text2:
wc -l text∗
27text
112text1
5text2
144total
The numbers 27, 112, and 5 are the numbers of lines in the files text, text1, and text2, respectively, and 144 is the total number of lines in the three files.
4.The file name is always appended to the output. To obtain a pure number for things like reporting purposes, pipe all input to the wc command using cat. For example, the following command will report the total count of characters in all .c files in a directory.
echo There are ‘cat ∗.c | wc -c‘ characters in \∗.c files
There are 1869 characters in ∗.c files
EXIT VALUES
The following exit values are returned:
0Successful completion
>0An error occurred