1000 개의 임의의 대문자 및 소문자로 된 텍스트 파일을 만들었습니다.

cat /dev/urandom | tr -dc "a-zA-Z0-9" | head -c 1000 > file1 

grepwc?

이렇게했습니다 :

grep -ic cat file1 

하지만 얼마나 많은 줄이 나타나는지 확인하고 싶습니다. 한 줄에 표시되는 횟수입니다. 아이디어가 있나요?

댓글

  • fyi, tr은 az .. 대신 [: alnum :]을 사용할 수 있습니다. . 그리고 줄뿐 아니라 특정 줄에만 표시되는 것이 아니라 전체 파일에 나타나는 횟수를 계산하려고합니다 (" 한 줄에 " 끝)?

답변

내가해야 할 일은이 파일에서 몇 번이나 “cat”명령을 사용하여 나타나는지 찾는 것입니다. grepwc.

시도 :

grep -oi cat file1 | wc -l 

예 :

$ cat file1 foo cat bar zoo cat random text cat dog foobar cat end! 

^ cat 위.

grep -oi cat file1 | wc -l 4 

From man grep (내 강조) :

 -o, --only-matching Print only the matched (non-empty) parts of a matching line, with each such part on a separate output line. 

설명

  • 위의 명령은 부분 문자열 인 경우에도 모든 하위 문자열 cat 을 찾습니다. bob cat cat alougue 같은 다른 단어의 그러나 파일은 공백을 포함하지 않고 단어 브레이크와 줄 바꿈을 포함하지 않도록 생성됩니다. 따라서 이것은 메모 일뿐입니다.
  • @schweik 예, 맞습니다. 답변에 단어 경계를 추가하지 않았습니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다