Escreva um bashscript para duplicar cada caractere de nova linha em um arquivo de texto?

3

Eu preciso de um script bash que pegue um arquivo e adicione um segundo caractere \ n para cada caractere \ n já existente no arquivo:

isto é:

abcd\nbcda

torna-se

abcd\n\nbcda

como eu começo. OU, eu deveria escrevê-lo em outro idioma e envolvê-lo em bash?

    
por Ritwik Bose 01.02.2010 / 16:58

3 respostas

8
sed 'G' file > newfile

ou

perl -nae 'print "$_\n";' file > newfile

ou

while read ln
do
   echo $ln; echo;
done < file > newfile
    
por 01.02.2010 / 17:35
2

Uma maneira muito simples de fazer isso.

cat inputfile.txt | while read a
do
echo $a >> outputfile.txt
echo "" >> outputfile.txt
done
    
por 01.02.2010 / 17:27
0

sed pode fazer isso com bastante facilidade

sed 'G' file
    
por 01.02.2010 / 17:38