Vim, apague para a linha n

4

Frequentemente estou editando arquivos em que preciso excluir tudo, exceto as cinco primeiras e as últimas três linhas. Eu faço isso movendo para a linha seis e digite ":, $ - 3 d". Existe alguma forma de realizar o mesmo usando d e algum tipo de movimento?

    
por johnny 16.11.2010 / 09:31

1 resposta

5

Claro que sim! d[num]G onde [num] é o número da linha de destino. Qualquer outro comando de movimento também funcionará em vez de G , é claro.

Para excluir as primeiras cinco e as últimas três linhas, supondo que você tenha aberto o arquivo e esteja na primeira linha, seria:

d5G   # delete from current position to line 5
G     # jump to last line
d2k   # delete from current position to 2 lines up (3 lines total)

Editar: Apenas releia a pergunta e viu que eu tenho suas intenções para trás - você quer manter as cinco primeiras / últimas três, não excluí-las. Nesse caso, é:

G     # jump to last line
3k    # up 3 lines
d6G   # delete from current position to line 6
    
por 16.11.2010 / 09:45

Tags