vim에서 : g의 반대가 있습니까?


10

를 사용하여 패턴과 일치하는 모든 줄에 무언가를 수행하는 방법을 알고 :g있습니다. 패턴과 일치 하지 않는 모든 줄에 무언가를 수행하는 방법이 있습니까?

예를 들어, / foo /와 일치하지 않는 모든 행을 삭제한다고 가정하십시오. 나는 다음과 같은 것을 할 수있다 :

:G/foo/d

( :G의 반대는 :g아니지만 내가 찾고있는 것입니다)

어떤 아이디어?


2
miv ni g :.
tsilb

답변:


17

VIM 내에서 반전이 있다고 생각합니다.

:g!/foo/d

또는 grep아래 명령 과 같이

:v/foo/d

쉘 프롬프트로 갈 준비가 되었다면

grep -v foo filename.txt > new.txt

이것을 할 것이다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.