Wc Command - Count Lines, Words, and Bytes

Learn how to use the wc command to count lines, words, bytes, and files in Linux/Unix. Includes examples for shell scripts and STDIN usage.

Wc Command - Count Lines, Words, and Bytes

The wc command is a fundamental utility in Unix-like operating systems used to count lines, words, and bytes in files or from standard input. It's an essential tool for quick text analysis and data processing in the command line.

Count Lines with Wc

To count the number of lines in a file or from standard input, use the -l option with the wc command.

# To count the number of lines in a file:
wc -l <file>

# To count the number of lines from standard input (e.g., piped from another command):
cat <file> | wc -l

Count Words with Wc

To count the number of words in a file or from standard input, use the -w option.

# To count the number of words in a file:
wc -w <file>

# To count the number of words from standard input:
cat <file> | wc -w

Count Bytes with Wc

To count the number of bytes in a file or from standard input, use the -c option.

# To count the number of bytes in a file:
wc -c <file>

# To count the number of bytes from standard input:
cat <file> | wc -c

Count Files and Directories

While wc is primarily for text content, it can be indirectly used to count items in a directory listing.

# To count files and directories at a given location:
ls | wc -l

Cleaning Wc Output for Shell Scripts

When using wc in shell scripts, the output might contain leading/trailing whitespace. Using xargs can help clean this up for numerical comparisons.

# Example: Clean wc output for comparison with an integer
ls -l | wc -l | xargs

The wc command is a versatile tool for any command-line user. For more advanced usage and options, consult the wc man page.