Notepad ++: Converter o EOL do Windows para o Unix após a criação do documento?

1

Eu criei um script Bash no Notepadd ++ e fiz isso erroneamente em EOL conversion > Windows . Em seguida, executo-o no Bash, mas houve muitos problemas e erros (por exemplo, cada linha vazia com um único recuo de tabulação aparece como um ponto).

Uma verificação profunda com cat -v expôs alguns caracteres ocultos de formatação semelhantes ao Windows no arquivo, adicionados pelo Notepad ++ que inseriram alguns caracteres ocultos de formatação do Windows, fazendo com que o arquivo fosse mal interpretado pelo bash.

Mesmo que eu já tenha mudado o modo EOL para o Unix, parece que o arquivo inteiro ainda está formatado no Windows. Agora posso excluir todas as guias e retornos de carrige e salvar novamente, mas existe uma maneira automática de alterá-lo para a formatação Nix que você conhece?

Obrigado,

    
por JohnDoea 21.12.2016 / 04:29

2 respostas

1

Você pode tentar dos2unix para converter seu arquivo para o formato Unix.

Como alternativa, no Notepad ++, verifique o que a Codificação está configurada - idealmente, você desejará o UTF-8 (use "Convert to UTF-8" na guia Encoding).

    
por 21.12.2016 / 04:35
1

Isso é muito fácil de corrigir usando ferramentas básicas de manipulação de texto. Qualquer um dos comandos abaixo irá corrigir o seu arquivo:

  1. sed:

    sed -i 's/\r//' file.sh
    
  2. perl

    perl -i -pe 's/\r//' file.sh
    
  3. tr

    tr -d $'\r' < file > newfile && mv newfile file
    
por 21.12.2016 / 11:01