![단어의 시작과 끝 부분에 몇 번이나 나타나는지 계산하는 방법은 무엇입니까? [폐쇄]](https://linux55.com/image/175368/%EB%8B%A8%EC%96%B4%EC%9D%98%20%EC%8B%9C%EC%9E%91%EA%B3%BC%20%EB%81%9D%20%EB%B6%80%EB%B6%84%EC%97%90%20%EB%AA%87%20%EB%B2%88%EC%9D%B4%EB%82%98%20%EB%82%98%ED%83%80%EB%82%98%EB%8A%94%EC%A7%80%20%EA%B3%84%EC%82%B0%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%ED%8F%90%EC%87%84%5D.png)
나는 2개의 정의(영숫자 및 파일)를 취하고 다음을 수행하는 스크립트를 작성하고 싶습니다. 영숫자(숫자 포함)로 시작하는 파일 라인과 해당 라인 수를 표시합니다. 파일의 영숫자 라인(숫자 포함)과 해당 라인 번호를 표시합니다. 영숫자 문자와 줄 수로 끝나는 파일의 줄을 표시합니다.
예를 들어 나는 이것을 가지고 있습니다
gg jj kk
gg ll mm
dd gg bb
ee zz gg
gg
시작하고 끝나는 횟수를 세고 싶습니다 .
답변1
이를 -c
위해 플래그를 사용할 수 있습니다 . grep
예를 들어, 입력 파일이 다음과 같은 경우 words
:
grep -c '^gg\b' words
gg
줄 시작 부분에 나타나는 줄 수가 표시됩니다.
grep -c '\bgg$' words
gg
줄 끝에 나타나는 줄 수가 표시됩니다.
^
및 $
줄의 시작과 끝을 각각 나타내는 특수 문자입니다.
이 플래그는 -c
출력에 일치하는 줄 자체가 아닌 일치하는 줄의 수가 포함되기를 원함을 나타냅니다.
하위 문자열로 포함된 단어와 일치하지 않도록 \b
단어 경계 표시를 포함하도록 답변을 업데이트했습니다 .gg