HS: Question bash/dash
Bonjour,
j'ai un fichier qui contient des caractères 0A (saut de ligne). À un
certain moment de mon traitement j'aimerai remplacer toutes les
occurrences de ce caractère qui se suivent par une unique (la suite 0A
.. 0A devient 0A).
Il s'agit d'un script de traitement de messages courriel pour lequel
j'aimerai extraire le corps du message dans un fichier texte. Exemple,
les lignes vides correspondent à la réalité et sont des 0A sauf la
dernière avant le second NextPart qui est un espace suivi de 0A:
[Début de l'entête du message]
------=_NextPart_000_0001_01CCDC33.85CFE960
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit
SMS essai
Je serai au RDV a 20h30
CH HT 01 02 4H
AG 03 3H 200C
------=_NextPart_000_0001_01CCDC33.85CFE960
[Suite entête du message]
Ce que je voudrai obtenir:
SMS essai
Je serai au RDV a 20h30
CH HT 01 02 4H
AG 03 3H 200C
Jusqu'à présent un simple
grep -m 1 -A 30 "^Content-Transfer-Encoding" "$ficmsg" | grep -m 2 -A 20
"^$" > "$ficmsgbody"
remplissait la fonction ($ficmsg contient l'ensemble du courriel),
malheureusement certains lecteurs courriel (Outlook en html ou les
webmails) rajoutent d'office un 0A et ma méthode ci dessus ne me donne
alors que la premiere ligne non vide.
Merci pour toute idée.
--
Daniel
Reply to: