J'ai le format de fichier suivant
Received from +11231231234 at 2021-10-10T19:56:50-07:00:
This is a message that contains words like from, at, etc.
Sent to +11231231234 at 2021-10-11T06:50:57+00:00:
This is another message that contains words like to, at, etc.
Je veux nettoyer les lignes "Received" et "Sent", la commande sed suivante permet d'y parvenir
cat file | sed 's/from//g' | sed 's/to/ /g' | sed 's/+\w\+//' | \
sed 's/at//g' | sed 's/T/ /g' | sed 's/[[:digit:].]*\:$//' | \
sed 's/[[:digit:].]*\:$//' | sed 's/-$//' | sed 's/-$//' | sed 's/+$//'
et donne les résultats suivants
Received 2021-10-10 19:56:50
This is a message that contains words like , , etc.
Sent 2021-10-11 06:50:57
This is another message that contains words like , , etc.
Comme vous pouvez le voir, cela nettoie bien les lignes "Reçu" et "Envoyé". Mais il nettoie également les lignes de message ! Comment puis-je appliquer ces opérations uniquement aux lignes commençant par "Reçu" et "Envoyé" ?