How to count total number of lines of found files?

If your version of wc and find support the necessary options:

find . -name pattern -print0 | wc -l --files0-from=-

which will give you per-file counts as well as a total. If you want only the total:

find . -name pattern -print0 | wc -l --files0-from=- | tail -n 1

Another option for versions of find that support it:

find . -name pattern -exec cat {} + | wc -l 

$ find . -name '*.txt' -exec cat '{}' \; | wc -l

Takes each file and cats it, then pipes all that through wc set to line counting mode.

Or, [untested] strange filename safe:

$ find . -name '*.txt' -print0 | xargs -0 cat | wc -l

Tags:

Linux

Bash

Find