Você deseja o comando :d[elete]
, precedido de um intervalo:
:[fromline],[toline]d
Os intervalos não estão limitados a números de linha absolutos: a pesquisa também pode ser usada:
:1,/bar/d
exclui todas as linhas entre a linha 1 e a primeira linha contendo bar
.
O comando a seguir exclui todas as linhas entre a linha 1 e a linha acima da primeira linha, começando com bar
:
:1,/^bar/-1d
Supondo que você não passe outros comandos antes que possa mover o cursor, podemos cortar alguns caracteres:
-
a linha atual é assumida se a primeira parte do intervalo estiver faltando, já que abrimos um novo buffer e não movemos o cursor, podemos remover o
1
, -
o deslocamento padrão para
-
é1
, pois esse é o deslocamento que usamos, podemos deixar o último1
também. O comando se torna::, / ^ bar / -d
Construído a partir dos blocos acima, o seguinte comando deve funcionar:
$ gvim -c "argdo ,/^Mark/-d | wq" *.txt