Exclua 100 linhas do editor vi usando o comando único

28

Estou usando o Ubuntu e tentando excluir todas as 100 linhas do editor vi , mas recebi uma entrevista para fazer isso em um único comando.

    
por mayur Mehta 26.08.2013 / 07:56

6 respostas

56

No modo normal, faça

100dd

dd exclui a linha atual. O prefixo desse comando com 100 faz com que ele seja repetido 100 vezes.

Se houver menos de 100 linhas no arquivo a partir da linha atual, dependendo da implementação de vi , ele falhará ao excluir ou excluir quantos houver. No caso de vim , isso depende se a opção cp aka compatible está ativada ou não.

    
por 26.08.2013 / 07:59
35
  1. delete 100 linhas do (incluindo) o atual

    • repita dd (exclua a linha atual) 100 vezes:

      100dd
      
    • excluir da linha atual para 99 linhas para a frente

      d99j
      
  2. delete 100 linhas para trás (incluindo) a atual

    d99k
    
  3. excluir linhas em um intervalo específico por número de linha

    :1,100d
    
  4. excluir linhas em um intervalo que começa com a linha atual

    :.,.+99d
    

etc.

    
por 26.08.2013 / 13:57
7

Se todas linhas no arquivo forem excluídas, este comando vi especifica o intervalo de exclusão:

:1,$d

1 indica a primeira linha e $ indica a última linha

    
por 26.08.2013 / 08:18
3

Você deseja excluir todas as linhas de um arquivo? Abra o arquivo com vi . Enquanto no início da primeira linha - a localização padrão do cursor quando você acabou de abrir o arquivo - pressione Esc seguido por d G .

Apenas para observar, a ação d indica exclusão e G indica a última linha do arquivo. Então, enquanto em qualquer linha você pressionar d G , ele apagará toda a linha, começando da linha atual até a última linha.

Se você souber quais linhas consecutivas excluir - digamos, da linha 101 a 200 - digite as seguintes seqüências de teclas: Esc : 1 0 1 , 2 0 0 d .

    
por 26.08.2013 / 09:27
3

Não importa onde você esteja no arquivo, você pode fazer ggdG

:%d faria melhor em menos pressionamentos de tecla. Bem, contando as chaves shift e enter , na verdade mais duas teclas pressionadas do que as anteriores.

Fazer algo como 100dd excluiria apenas até 100 linhas de onde você está, e isso pode não excluir todas as linhas do arquivo, dependendo da posição atual da linha.

    
por 28.08.2013 / 00:14
0

Esc n dd. n é o número de linhas para excluir e incluir a linha atual. Pressione o botão "Esc", depois "n" e depois "dd". Para melhorar sua compreensão

    
por 07.05.2018 / 08:18