-
[0-9]é uma simples coleção de dígitos que funciona em praticamente qualquer lugar. No Vim, você também pode usar\d(dígito decimal). - Você deseja uma ou mais instâncias: acrescente o
\+multiplicador. - Essa deve ser a única coisa na linha, então o regexp precisa estar ancorado no início e no final (via
^e$, respectivamente). - Você quer tentar uma correspondência em todas as linhas; no Vim, isso é feito via
:global/{pattern}/. - As linhas de correspondência devem ser
:deleted.
Juntos:
:global/^[0-9]\+$/delete
Você também pode usar sed ; é mais rápido e funciona de forma não interativa. Como isso aplica automaticamente qualquer regra a todas as linhas de entrada, você não precisa do :global e do :delete é apenas um d . Com -i , a substituição é feita no lugar (por isso, certifique-se de que está correta e tenha uma cópia de backup do arquivo original!)
sed -i -e '/^[0-9]\+$/d' file
Para o prefixo opcional, o multiplicador para isso é \? . Se esse ^L for um único caractere, você provavelmente precisará inseri-lo no Vim como <C-V><C-L> .