wc (word count) is a command that tells us something about the contents of a file. For example:
$ wc main.c 63 140 1328 main.c
This tells us that main.c contains 63 lines, 140 words and 1328 characters. The -L switch to wc gives us the length of the longest line in the input file.
A real-world example of a shell script that sends a mail consisting of some data in a file, provided there are any data in the file.
#!/bin/sh lines=`wc -l committ-log | sed 's/ //g'` if test $lines != "0"; then current_date=`date '+%b-%d-%T-%Y' | sed 's/ /_/g'` < committ-log mail -s "[committ-log for project ABC] \ $current_date" email@example.com rm committ-log; fi;
This script is used to notify me and other people involved in project ABC if something has been committed into our cvs. But since we don't want any unnecessary spam we only send mail when there actually is something in the log file.
These are related to summarizing the contents of files.