Vim에서 특정문자열 이후 스트링을 모두 삭제하고 싶습니다.

ttongfly의 이미지

안녕하세요~

VIM 활용에 대해서 질문이 있는데요

아래와 같은 스트링이 있다고 할 때.

Real_Seminar Host Node 10.10.10.10 - - - - N/A Chemical Today
Real_Seminar Host Node 10.10.10.11 - - - - N/A Chemical monday
Real_Seminar Host Node 10.10.10.12 - - - - N/A Chemical day
Real_Seminar Host Node 10.10.10.13 - - - - N/A Chemical tomorrow
Real_Seminar Host Node 10.10.10.14 - - - - N/A Chemical hey

저 IP대역 이후의 스트링을 삭제하고 싶습니다.

그럴때 어떤 명령을 주면 되는지 알고싶습니다.

감사합니다~~

planetarium의 이미지

저 예제 부분만 보면

:%s/ - - - - .*//

하면 될것 같네요.
Prentice의 이미지

앞에 무슨 내용이 올지는 아시는데 뒤의 내용이 매번 바뀌어서 어렵다면 이런 수도 있습니다.

%s/\(10\.10\.10\.1[01234]\).*/\1/g

/ 앞을 찾으면서
\(\) 원하는 내용은 괄호에 일단 저장을 하시고
.* 여기에 해당하는 뒷부분 내용은 저장되지 않게 하신 후
/ 치환을 하면서
\1 첫번째 괄호에 해당하는 내용만 넣으시는 겁니다.