Apakah ada kebalikan dari: g in vim?


10

Saya tahu bagaimana melakukan sesuatu untuk setiap baris yang cocok dengan suatu pola, menggunakan :g. Apakah ada cara untuk melakukan sesuatu pada setiap baris yang tidak cocok dengan polanya?

Misalnya, saya ingin menghapus setiap baris yang tidak cocok / foo /. Saya mungkin melakukan sesuatu seperti:

:G/foo/d

( :Gbukan kebalikan dari :g, tapi itu yang saya cari)

Ada ide?


2
miv ni g:.
tsilb

Jawaban:


17

Saya pikir ada inversi dalam VIM seperti,

:g!/foo/d

atau, seperti grepperintah (di bawah),

:v/foo/d

Jika Anda siap untuk pergi ke prompt shell,

grep -v foo filename.txt > new.txt

akan melakukan ini

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.