
단어 수로 텍스트 파일을 검색해야 합니다. 파일에는 문장 줄이 포함되어 있으며 줄 수가 아닌 단어가 나타나는 횟수에만 관심이 있습니다. 줄 대신 단어를 검색하도록 grep에 어떻게 지시합니까?
grep -c '^ab'
예를 들어 (로 시작하는 단어 )를 사용하면 로 시작하는 단어 수가 아니라 ab
로 시작하는 줄 수만 반환됩니다 .ab
ab
답변1
GNU grep을 사용하면 이 -o
플래그를 사용하여 모든 일치 항목을 얻은 다음 개수를 계산할 수 있습니다 wc -l
.
grep -o '\<ab' file.txt | wc -l
아니면 grep 자체를 사용하여 계산할 수도 있을 것 같습니다.
grep -o '\<ab' file.txt | grep -c ''
(" \<
"는 "단어의 시작"을 의미합니다.)
답변2
file.txt
줄 수 대신 단어 수를 계산하려면 각 단어를 한 줄에 입력하면 됩니다.
tr " " "\n" file.txt | grep -c '^ab'