Encodage caracteres dans scripts "periodic"

Le
xavier
Bonjour,

Certains de mes scripts periodic font appel à des programmes externes
qui peuvent émettre de l'UTF-8.

Si je les appelle à la main, ces caractères apparaissent correctement
dans mon terminal paramétré en UTF-8. Par contre, le mécanisme standard
de periodic(8) est de piper la sortie dans mail(1) qui ne met pas
d'entête Content-Type, et le résultat dans mon mailer est moche.
mail.rc ne permet pas de paramétrer ceci, sauf erreur.

Existe-t-il une autre solution que d'expédier le message séparément, en
construisant mes entêtes et en envoyant le tout à sendmail -ti ?

Merci,

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
patpro ~ patrick proniewski
Le #23236771
In article (Xavier) wrote:

Bonjour,

Certains de mes scripts periodic font appel à des programmes externes
qui peuvent émettre de l'UTF-8.

Si je les appelle à la main, ces caractères apparaissent correctement
dans mon terminal paramétré en UTF-8. Par contre, le mécanisme standard
de periodic(8) est de piper la sortie dans mail(1) qui ne met pas
d'entête Content-Type, et le résultat dans mon mailer est moche.
mail.rc ne permet pas de paramétrer ceci, sauf erreur.

Existe-t-il une autre solution que d'expédier le message séparément, en
construisant mes entêtes et en envoyant le tout à sendmail -ti ?



et tu ne peux pas modifier /etc/crontab pour ajouter un pipe et la
commande qui te convient en bout de ligne ?

patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
xavier
Le #23237141
patpro ~ patrick proniewski
et tu ne peux pas modifier /etc/crontab pour ajouter un pipe et la
commande qui te convient en bout de ligne ?



Ce n'est pas crontab, enfin si, mais il appelle /sbin/periodic, un
script shell qui redirige sa sortie selon la config lue dans
/etc/periodic.conf

Donc, ça ne serait pas différent de ma solution qui consiste à envoyer
moi même le mail, et retourner 0 à /sbin/periodic pour lui dire de ne
pas traiter la sortie de ce script. Ca serait même plus compliqué.

La "bonne" solution serait de patcher periodic, pour lui faire utiliser
sendmail -ti au lieu de mail. Encore mieux, patcher mail pour qu'il
accepte une option "rajouter telle entête". Mais bon, modifier le
fonctionnement d'un outil ultra standard, pas top non plus.

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
xavier
Le #23237311
patpro ~ patrick proniewski
hmmm, ok, j'ignorais. bonne chance alors :)



/usr/sbin/periodic (et non pas /sbin/periodic, come indiqué par erreur)
est structuré ainsi :

[...]
case "$output" in
/*) pipe="cat >>$output";;
"") pipeÊt;;
*) pipe="mail -E -s '$host ${arg##*/} run output' $output";;
[...]
{
[...execution de /etc/periodic/whatever/*...]
} | eval $pipe

C'est d'ailleurs un élégant exemple d'école de l'utilisation de `eval`

Bon, maintenant, j'ai un peu de mal à voir comment je pourrais insérer
des entêtes (lus dans un fichier de conf, bien entendu) avant le stdout
envoyé à "eval pipe" pour remplacer mail -s etc... par sendmail -ti

Faudrait touiller tout le bloc "{} | eval $pipe" pour utiliser
probablement un fichier temporaire inconditionnellement, ce qui, j'ai
l'impression, n'est fait que dans le cas pipe="cat >>$output";;

Y'a quequ'chose qui cloch' là d'dans, j'y retourn' immédiatement !

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
patpro ~ patrick proniewski
Le #23237221
In article (Xavier) wrote:

patpro ~ patrick proniewski
> et tu ne peux pas modifier /etc/crontab pour ajouter un pipe et la
> commande qui te convient en bout de ligne ?

Ce n'est pas crontab, enfin si, mais il appelle /sbin/periodic, un
script shell qui redirige sa sortie selon la config lue dans
/etc/periodic.conf



hmmm, ok, j'ignorais. bonne chance alors :)

patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
Publicité
Poster une réponse
Anonyme