Titulo: SED - Conversão de linhas em parágrafos
SED - Conversão de linhas em parágrafos
Eu frequentemente crio meus documentos com o editor vi. O que eu escrevo
geralmente se parece com o bloco abaixo:
Para receber diariamente em sua caixa postal as mensagens\n
veiculadas na lista Dicas-L, digite na caixa de texto abaixo\n
o seu endereço eletrônico.\n
O "\n" indica quebra de linha e não aparece no texto original. Ou seja, eu
geralmente divido os parágrafos inserindo linhas em branco entre um
parágrafo e o outro.
Se eu quero levar este texto para um editor de textos como o [1]OpenOffice
eu tenho um problema, pois o OpenOffice irá interpretar cada linha como um
parágrafo separado, o que irá me dar um trabalho enorme.
Pesquisando por uma solução para este problema, eu encontrei o [2]The SED
FAQ que oferece uma solução muito interessante, que inclusive é uma das
seções do documento.
A solução está no item [3]4.2.7 do FAQ e consiste no seguinte script:
# sed script to change all paragraphs to long lines
/./ # Put each paragraph into hold space
x; # Swap hold space and pattern space
s/^\(\n\)\(..*\)$/\2\1/; # Move leading \n to end of PatSpace
s/\n\(.\)/ \1/g; # Replace all other \n with 1 space
# Uncomment the following line to remove excess blank lines:
# /./!d;
#---end of sed script--
Para entender o que cada...
Fonte: Dicas Linux
Tags: script solução texto