2013-08-23 42 views
4

假設我正在編輯1000行文件。如何刪除行N後匹配「ABC」的所有行

我想保持1-500行不變。

但我想刪除匹配「ABC」

我怎樣才能做到這一點,線500之後的所有行?

我可以做所有生產線生產線這

:g/ABC/d 

,我可以刪除範圍

:501,$d 

但是怎麼都行只刪除匹配模式的行?

(已用vi自1989年以來就想不出如何做到這一點!如果對不起很明顯)

回答

13

:global需要一個範圍了。因此你想:

501,$g/ABC/d :-)

+1

非常好!我想我一直認爲全球意味着全球化,甚至不認爲它可以接受一個範圍。乾杯。 – Rob

+0

也許ed/ex/vi在開始時不支持範圍,所以現在看起來很奇怪。但這只是一個猜測! – mhinz