Si su versión de wc
y find
admite las opciones necesarias:
find . -name pattern -print0 | wc -l --files0-from=-
que le dará recuentos por archivo, así como un total. Si quieres solo el total:
find . -name pattern -print0 | wc -l --files0-from=- | tail -n 1
Otra opción para versiones de find
que lo apoyan:
find . -name pattern -exec cat {} + | wc -l
$ find . -name '*.txt' -exec cat '{}' \; | wc -l
Toma cada archivo y cat
s él, luego canaliza todo eso a través de wc
configurar el modo de conteo de líneas.
O, [no probado] extraño nombre de archivo seguro:
$ find . -name '*.txt' -print0 | xargs -0 cat | wc -l