[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Script bash, lecture fichier "on the fly"



Brice Méalier <mealier_brice@yahoo.fr> writes:

> On Sat, Jul 09, 2005 at 07:54:28AM +0200, Jean-Damien Durand wrote :
>> Tu peut recuperer les headers que tu veux en une seule fois, par example:
>> 
>> headers=`egrep "^(To:|Subject:|From:)"|tr " " "_"`|sort -t: -u|xargs
>> echo "MailPopup $headers"|FvwmCommand -c
>> 
>> (coup de bol: From, Subject et To sont dans le bon ordre alphabetique - le fait que tu
>> changes les espaces en '_' aide - sinon ca serait un peu plus tordu a cause du echo
>> apres).
>> 
>> En esperant que ca marche pour toi...
>
>
> Merci de la réponse mais ça marche pas!
>
>
> J'ai donc décidé de sauver le mail dans un fichier temporaire et de
> travailler ce fichier:
>
> tmp_mail=/tmp/tmp_mail
>
> cat > $tmp_mail
>
> to=`grep -v "\-To" < $tmp_mail |grep -m 1 "To:"|tr " " "_"`
> subject=`grep -m 1 "Subject:" < $tmp_mail |tr " " "_"`
> from=`grep -m 1 "From:" < $tmp_mail |tr " " "_"`
>
>
> rm $tmp_mail
>
> fvwmfunction='MailPopup'\ "$from"\ "$subject"\ "$to"
>
> echo "$fvwmfunction"|FvwmCommand -c
>
>
> Merci

Un script perl aurait été plus adapté, il t'éviterai de lire 3 fois le mail.

L'entée standard peut être traitée ligne à ligne, pour chaque header tu peux
donc alimenter la variable qui va bien, enfin tu peus t'arrêter de lire dès que
toutes les variables sont renseignées.


Léo.



Reply to: