vi 편집기를 사용하여 문자열을 검색하고 파일에서 발생 횟수를 찾고 싶습니다.
답변
:g/xxxx/d
이렇게하면 패턴이있는 모든 줄이 삭제되고 삭제 된 줄 수가보고됩니다. 나중에 되돌리려면 실행 취소하십시오.
답변
방법은
: % s / 패턴 // gn
답변
n
깃발 이 필요합니다 . 단어를 계산하려면 다음을 사용하십시오.
:%s/\i\+/&/gn
그리고 특정 단어 :
:%s/the/&/gn
count-items
문서 섹션을 참조하십시오 .
간단히 입력하면 :
%s/pattern/pattern/g
그런 다음 상태 줄은 vi에서 일치하는 수를 제공합니다.
답변
: % s / string / string / g가 답을 줄 것입니다.
답변
(구스타보가 말한 것과 비슷하지만 추가적으로 🙂
어떤을 위해 이전에 검색, 당신은 간단하게 할 수 있습니다 :
:%s///gn
패턴이 이미 검색 레지스터 ( @/
)에 있으므로 필요하지 않습니다 .
“%”- s/
전체 파일에서 수행
“g”-전역 검색 (한 줄에 여러 히트 포함)
“n”-대체 방지 s/
– 아무것도 삭제되지 않습니다! 취소 할 수 없습니다!
( :help s_flag
자세한 내용 은 참조 )
(이렇게하면 vim-wikia tip171에 설명 된대로 ” 시각적으로 선택된 텍스트 검색 “과 완벽하게 작동합니다. )
답변
사용하다
: % s / 패턴 / \ 0 / g
패턴 문자열이 너무 길고 다시 입력하고 싶지 않을 때.
답변
짧은 대답 :
: % s / 검색 할 문자열 // gn
학습 :
VI 편집기에는 아래와 같이 3 가지 모드가 있습니다.
:
당신은에서 입력하는Command
로Command-line
모드. 이제, 당신이 작성한 것은:
CLI (Command Line Interface)에 있습니다.%s
모든 행을 지정합니다. 범위를 지정하는%
것은 전체 파일에서 대체 를 의미합니다. 모든 발생 대체 구문은 다음과 같습니다.:%s/old-text/new-text/g
g
행의 모든 항목을 지정합니다. 로g
플래그, 당신은 전체 라인을 대체 할 수 있습니다. 이g
플래그를 사용하지 않으면 줄의 첫 번째 항목 만 대체됩니다.n
발생 횟수를 출력하도록 지정합니다.//
이중 슬래시는replacement text
. 우리는 단지 찾고 싶기 때문입니다.
발생 횟수가 확인되면 N
키를 눌러 발생 횟수를 하나씩 볼 수 있습니다 .
특정 범위의 행 번호 1에서 10을 찾고 계산하는 경우 :
: 1,10 초 / 안녕하세요 // gn
- , 유의하시기 바랍니다
%
전체 파일에 의해 교체되었습니다됩니다에 대한,
분리 된 줄 번호.
특정 범위의 행 번호 1에서 10을 찾고 바꾸려면 :
: 1,10 초 / 헬로 / 안녕하세요 / gn
