![vim을 사용하여 파일의 특정 문자 수를 얻는 방법](https://linux55.com/image/13657/vim%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%ED%8A%B9%EC%A0%95%20%EB%AC%B8%EC%9E%90%20%EC%88%98%EB%A5%BC%20%EC%96%BB%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
내 문제는 다음과 유사합니다.vim에서 파일을 편집할 때 파일의 단어 수를 계산하는 방법
하지만 다른 작업에서는 vim의 검색 기능을 사용하여 문자 수를 세고 파일 끝에 써야 합니다.
예를 들어, 숫자가 몇 개인지 세어야 한다면 다음과 같은 것이 필요합니다. :%s/[0-9]/{g}
그런 다음 해당 검색에서 선택한 문자의 수를 세는 명령이 필요합니다.
편집하다:
먼저 계산하려는 모든 문자를 선택하고 다음과 같이 사용하는 방법을 시도하고 있습니다 /[0-9]
.'<,'>
'<,'> !wc -m
답변1
내가 올바르게 이해했다면 다음을 시도해 볼 수 있습니다.
111
222
333
~
~
:redi>>%|%s/\d//gn|redi END
9 matches in 3 lines
그 후 버퍼를 업데이트하십시오.
:e
답변2
다른 대답은 좋지만 내가 원하는 것은 쓰여진 문자 수뿐입니다.
이는 파이프라이닝을 통해 달성할 수 있습니다 grep
.wc
:%!grep -o '[0-9]' | wc -l