|Developer(s)||AT&T Bell Laboratories|
|Initial release||November 3, 1971|
|Operating system||Unix and Unix-like, MSX-DOS|
|License||coreutils: GNU GPL v3|
The program reads either standard input or a list of files and generates one or more of the following statistics: newline count, word count, and byte count. If a list of files is provided, both individual file and total statistics follow.
Sample execution of wc:
$ wc foo bar 40 149 947 foo 2294 16638 97724 bar 2334 16787 98671 total
The first column is the count of newlines, meaning that the text file foo has 40 newlines while bar has 2294 newlines- resulting in a total of 2334 newlines. The second column indicates the number of words in each text file showing that there are 149 words in foo and 16638 words in bar – giving a total of 16787 words. The last column indicates the number of characters in each text file, meaning that the file foo has 947 characters while bar has 97724 characters – 98671 characters all in all.
Newer versions of
wc can differentiate between byte and character count. This difference arises with Unicode which includes multi-byte characters. The desired behaviour is selected with the
wc used to be part of the GNU textutils package; it is now part of GNU coreutils. The version of
wc bundled in GNU coreutils was written by Paul Rubin and David MacKenzie. A
wc command is also part of ASCII's MSX-DOS2 Tools for MSX-DOS version 2.
wc -l <filename>prints the line count (note that if the last line does not have \n, it will not be counted)
wc -c <filename>prints the byte count
wc -m <filename>prints the character count
wc -L <filename>prints the length of longest line (GNU extension)
wc -w <filename>prints the word count