찾은 파일의 총 줄 수를 계산하는 방법은 무엇입니까? -name pattern일부 파일을 찾기 위해 a 를

find . -name pattern일부 파일을 찾기 위해 a 를 실행 중이며이 파일의 총 줄 수를 우아하게 얻고 싶습니다.

어떻게하면 되나요?



답변

사용중인 버전이 wc있고 find필요한 옵션을 지원하는 경우 :

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

파일 당 개수와 총 개수를 제공합니다. 합계 만 원하는 경우 :

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

find해당 버전의 다른 옵션은 다음 을 지원합니다.

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


답변

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

각 파일을 가져 cat와서 wc세트를 통해 라인 카운팅 모드 로 파이프 합니다.

또는 이상한 파일 이름이 안전합니다.

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


답변

불행히도 :

find . -iname "yourpattern" -exec cat '{}' \; |wc -l

여분의 줄을 삽입합니다. 신뢰할 수있는 라인 수를 얻으려면 다음을 수행해야합니다.

find . -name "yourpattern" -print0 | xargs -0 wc -l

이렇게하면 공간을 올바르게 처리하고 각 파일의 줄 수와 총 줄 수를 더 빠르고 스타일로 얻을 수 있습니다!


답변

안되는 또 다른 쉬운 방법. 파일의 줄 :

wc -l filename

예:

wc -l myfile.txt 


답변

테스트되지 않았지만 다음과 같은 것은 어떻습니까?

cat `find . -name "searchterm" -print` | wc -l


답변

wc -l `find -name filename`

효율적으로 작동합니다.


답변