depois de mudar o arquivo do unix para dos é ter linhas vazias..como lidar com isso

0

Depois de converter o arquivo usando o comando **unix2dos** , ele está tendo algumas linhas vazias. Por favor me ajude. Como lidar com isso?

Eu tentei excluir linhas vazias da seguinte forma, mas não consegui trabalhar.

$ sed '/^$/d' /tmp/data.txt

Hey exemplos a seguir também não funcionaram. Pl ajuda

Esta é a fonte de dados antes de usar o unix2dos.

ID NAME DATE

1 BALA 09/23/2013

2 KRISHH 09/24/2013

3 billy 09/24/2013

Depois de usar o unix2dos, ele vem como

ID NAME DATE

1 BALA 09/23/2013




2 KRISHH 09/24/2013

3 billy 09/24/2013

primeiro e segundo registro há uma linha vazia chegando ... pode estar em entre os dados também

Obrigado

    
por evilsoup 26.09.2013 / 12:11

2 respostas

0

Em novas linhas Unix são "\ n" e sob a janela são "\ r \ n" para convertê-los você precisa substituir "\ r \ n" com "\ n", ou apenas se livrar de todos os "se você usa o notepad ++, ele pode fazer a conversão para você, e também qualquer coisa com localizar e substituir deve funcionar.

\ n = nova linha

\ r = retorno de carro

Google "Endings de linha Unix" para mais informações.

    
por 26.09.2013 / 12:14
0

Como você mencionou, seu arquivo tem CR-LF finais de linha. Como tal, sed '/^$/d não funcionaria.

Tente

sed '/^\x0D$/d' inputfile
    
por 26.09.2013 / 12:18

Tags