Brice Méalier a écrit :

Bonjour

pour programmer un mail popper sous fvwm m'indiquant le sujet, la
provenance et la destination de mails entrant sur ma machine, je
souhaite utiliser un script bash.

Donc voici mon environnement:
j'utilise des boites au format mbox stockées dans $HOME/mail/ j'utilise
procmail en que MDA.
Dans procmail, les mails sont triés selon les headers et pour mon petit
mail popper, j'utilise la règle suivante:


:0 c
*
|newMail.sh


tout nouveau mail est donc copié et passé dans un script bash.

Ce script doit simplement extraire les headers "From", "Subject" et "To"
et les envoyer dans des variables qui me serviront un peu plus tard pour
mon popper.

Ce que j'ai fait pour le moment:

#!/bin/bash

FVWM=`ps -ef|grep '[f]vwm -s'`

# make sure we are running fvwm
if [ -z "$FVWM" ]
then
        exit 0
fi

to=`grep -v "\-To"|grep -m 1 "To:"|tr " " "_"`
subject=`grep -m 1 "Subject:"|tr " " "_"`
from=`grep -m 1 "From:"|tr " " "_"`

fvwmfunction='MailPopup'\ "$from"\ "$subject"\ "$to"

echo "$fvwmfunction"|FvwmCommand -c




le problème est que les données à lire sont volatiles et il n'est
capable de m'extraire seulement le premier champ spécifié (ici le champ
To, si je change l'ordre, il me lit le premier de la série).

Donc 2 solutions (il me semble): lancer les 3 "grep" en même tempset
enregistrer leurs sorties respectives (je crois pas ça possible...) ou
enregistrer l'entrée du script dans un fichier et travailler avec ce
fichier puis y faire un echo "">fichier en attendant le prochain mail.


Je suis débutant en bash et je bloque par manque de connaissances là! je
sais pas comment faire!

Auriez-vous une idée?


Cordialement Brice




man formail

--
Le signe "oui" est d'un homme qui s'endort ;
au contraire, le réveil secoue la tête et dit non.
        -+- Émile Chartier, dit Alain (1868-1951) -+-


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Répondre à