Como posso excluir no VIM todo o texto da linha atual até o final do arquivo?
213
Eu tenho arquivos muito grandes (mais de 10 GB). Eu preciso apenas de algumas linhas da parte superior do arquivo. É possível (no vim) excluir o restante do arquivo (da linha atual até o final do arquivo)?
Eu sei que você quer usar Vim, mas eu faria um comando como: head -n <number_of_lines> <filename> > <truncated_filename> Onde -né o parâmetro para o número de linhas que você quiser a partir do topo
EhevuTov
Respostas:
365
dG excluirá da linha atual até o final do arquivo
dCtrl+ Endexcluirá do cursor até o final do arquivo
Mas se esse arquivo for tão grande quanto você diz, é melhor ler as primeiras linhas com, em headvez de editar e salvar o arquivo.
head hugefile > firstlines
(Se você estiver no Windows, poderá usar a porta Win32 de head)
Isso excluirá todo o conteúdo da linha atual até o final do arquivo. Isso é muito útil quando você está lidando com geração ou remoção de vetores de teste.
Eu prefiro ter mais controle da linha de partida, então uso: :<line number>,$dpor exemplo: :3,$dexcluirá da linha 3 até o final do arquivo
emont01 28/11/17
0
Basta adicionar outra maneira, no modo normal, digite ctrl+ventão G, selecione o resto e, em seguida D, não acho que seja eficaz, você deve fazer como @Ed Guiness, head -n 20> filename no linux.
head -n <number_of_lines> <filename> > <truncated_filename>
Onde-n
é o parâmetro para o número de linhas que você quiser a partir do topoRespostas:
dG excluirá da linha atual até o final do arquivo
dCtrl+ Endexcluirá do cursor até o final do arquivo
Mas se esse arquivo for tão grande quanto você diz, é melhor ler as primeiras linhas com, em
head
vez de editar e salvar o arquivo.(Se você estiver no Windows, poderá usar a porta Win32 de
head
)fonte
head
fornecidas, por exemplo:head -n20 hugefile
para as primeiras 20 linhas. o padrão de n é 10.head
? O uso de dG em um arquivo grande (1G +) leva muito tempo (por exemplo, 5 minutos).dgg
será excluído da linha atual até o início do arquivo.Vá para a primeira linha da qual você deseja excluir e pressione as teclas dG
fonte
:.,$d
Isso excluirá todo o conteúdo da linha atual até o final do arquivo. Isso é muito útil quando você está lidando com geração ou remoção de vetores de teste.
fonte
:<line number>,$d
por exemplo::3,$d
excluirá da linha 3 até o final do arquivoBasta adicionar outra maneira, no modo normal, digite
ctrl+v
entãoG
, selecione o resto e, em seguidaD
, não acho que seja eficaz, você deve fazer como @Ed Guiness, head -n 20> filename no linux.fonte