Como remover o retorno de carro no vi

0

Eu tenho um arquivo que está falhando devido a um único retorno de carro no final (0x0D). Foi originalmente uma combinação de retorno de carro / nova linha (0x0D, 0x0A). Eu tentei:

  • excluindo-o no modo INSERIR (exclui o último caractere de impressão e deixa o retorno de carro)
  • %s/\r// ( E486: Pattern not found: \r )
  • %s/^M// (Ctrl + V, Ctrl + M para obter ^M ) ( E486: Pattern not found: ^M )
  • J para unir-se à próxima linha (parece não fazer nada na última linha)

Todos eles deixam o retorno de carro no lugar.

Como posso me livrar desse caractere de dentro de vi (não vim )?

EDITAR

Agora parece que está adicionando um novo caractere de linha (0x0A) sempre que eu salvar o arquivo. Então, o 0x0D acabou, mas ainda tenho um caractere inválido no final do meu arquivo.

Eu tentei adicionar duas linhas em branco para ver se adicionaria 0x0A ou 0x0D, 0x0A (estou usando o PuTTY do Windows) e adicionei dois caracteres 0x0A, para um total de três.

Se você tem três linhas, você não precisa apenas de dois separadores de linha?

  • %s/\n// (nenhum erro, mas não remove o caractere)
por CJ Dennis 11.05.2018 / 03:24

1 resposta

0

Eu finalmente encontrei uma resposta em outro lugar:

:set noendofline binary

Remove a nova linha final quando o arquivo é salvo.

    
por CJ Dennis 11.05.2018 / 04:07