Le 11 juin 2009 21:38, Alain Vaugham<[email protected]> a écrit :
> Le jeudi 11 juin 2009 18:38, Paul Marques Mota a écrit :
>> Le 11 juin 2009 06:47, Alain Vaugham<[email protected]> a écrit :
>> > Le jeudi 11 juin 2009 16:08, Paul Marques Mota a écrit :
>> >> Le 11 juin 2009 14:47, Alain Vaugham<[email protected]> a écrit :
>> >> > Bonjour la liste,
>> >>
>> >> Bonjour,
>> >>
>> >> > Est-ce que quelqu'un pourrait m'indiquer la syntaxe pour écrire la
>> >> > date et l'heure avec Formail?
>> >>
>> >> Je dirais :
>> >>
>> >> formail -a "Date: $(date -R)" < mail.txt
>> >>
>> >> L'option -a rajoute un champ s'il n'existe pas déjà, -I le remplace.
>>
>> ... l'option -A rajoute un champ, même s'il existe déjà.
>>
>> > Merci Paul pour ta réponse.
>>
>> De rien.
>>
>> > Le champ "Date:   ......" dans le mail est normalement créé avec la date
>> > de la machine sur laquelle le mail a été créé (l'émetteur du mail)
>> >
>> > La date que je veux écrire est celle de la machine sur laquelle tourne
>> > mon Formail (sur mon serveur de
>> > mail-qui-reçoit-des-mails-antidatés-ou-postdatés) Je ne veux donc pas
>> > toucher à l'entête "Date:".
>> > Je veux juste ajouter un entête "X-L'heure d'arrivée est:"
>>
>> Dans ce cas, ça devient :
>>
>> formail -A "X-arrival-time: $(date -R)" < mail.txt
>
> J'ai suivi exemple au pied de la lettre.

En fait, non, tu utilises très certainement formail dans procmail, ce
que tu n'avais pas précisé.

> Le -A ou le -a ajoutent bien un en-tête mais le "< mail.txt" l'annule.
> Explications :
>  |formail -A "X-arrival-time: $(date -R)" < mail.txt
> n'ajoute aucun en-tête.
>
>  |formail -A "X-arrival-time: $(date -R)"
> ajoute l'en-tête suivant. La formule y est mais pas la date/heure :
>  X-arrival-time:  $(date -R)
>
>
> Dans le fichier mail.txt j'ai mis n'importe quel texte :
> 2009-06-11 17:18:19
>
> Je comprend que mail.txt est une entrée destinée à alimenter Formail mais je
> ne comprend pas de quel entrée il s'agit puisque Formail est censé travailler
> soit sur le mail, soit sur une copie du mail et qu'il doit aller chercher la
> date quelque part dans une commande "date".
> Je pense qu'on sort du cadre de Formail maintenant.
>
> C'est quoi cette source " < mail.txt" qui me perturbe tant?

C'est une copie d'un de mes mails. La forme :

|formail -A "X-arrival-time: $(date -R)"

dans un .procmailrc indique que procmail envoie le contenu du mail à
formail. La forme :

formail -A "X-arrival-time: $(date -R)" < mail.txt

tapée dans un terminal indique que formail va lire le contenu du
fichier mail.txt.

> J'ai testé aussi avec une variable :
> |formail -A "X-arrival-time: $horodatage"
> ça marche bien tant que la variable est définie ainsi :
> horodatage=du-texte-ici
> Mais si je tente d'y mettre des formules, je récupère les formules mais pas le
> résultat escompté : la date (voir mon post initial).

Parce que procmail ne permet pas de lancer de commandes récursivement,
il faut utiliser sh :

|sh -c 'formail -A "X-arrival-time: $(date -R)"'

> Alain Vaugham

Amicalement,
-- 
    Paul
_________________________________
Linux mailing list
[email protected]
http://lists.parinux.org/mailman/listinfo/linux

Répondre à