Envoi de fichier par mail

Résolu
tbeghain Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   -  
tbeghain Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Bonjour,
J'ai des scripts qui tournent sur AIX et qui envoient des mails par la commande :
cat MonFichier | mail -s "le sujet du mail" adresse@mail

Ces scripts retournent un texte directement visible dans le corps du mail lorsque l'utilisateur l'ouvre.
Nous sommes passés sous CENTOS 7 , et la même commande, au lieu de retourner du texte, comme avec AIX, retourne un fichier xxxx.dat dans le corps du mail. Le contenu du fichier est, bien sûr lisible et conforme à ce qui est attendu.

Y a t'il un paramétrage particulier du mail avec centos, ou un paramètre particulier dans la commande mail pour faire la même chose qu'avec AIX ?

Merci pour vos réponses


A voir également:

7 réponses

mamiemando Messages postés 33768 Date d'inscription   Statut Modérateur Dernière intervention   7 878
 
Bonjour,

Tu peux essayer de regarder cette discussion qui semble couvrir ton problème;

Bonne chance
1
tbeghain Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour et merci pour cette réponse.

En fait, cette discussion explique le phénomène. Effectivement, le mail n'aime pas les caractères "spéciaux".
En effet, si dans mon fichier d'entrée, j'ai des caractères accentués remplacés par une suite de caractères (ex opératoires à la place de opératoires),
Alors le mail envoie sous forme d'un fichier xxxx.dat.
Lorsque je supprime dans le fichier que j'envoie tous ces caractères "spéciaux", effectivement, j'ai bien le contenu du fichier dans le coprs du mail.
En fait, la communication entre l'AIX et le Linux se fait par un rsync qui synchronise les deux serveurs.
Je pense donc qu'il faut un paramètre langue spécifique différent de celui de l'AIX (actuellement, les deux serveurs ont les mêmes paramètres de langage) ou bien un paramètre au niveau du rsync.... Si quelqu'un a une idée à suggérer, elle est la bienvenue.

Cordialement,

Thierry
1
tbeghain Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour,

J'ai trouvé. C'est la paramètre LANG qui n'était pas bon. J'ai mis "LANG=fr_FR.iso-8859-1" dans le .bashrc

et ça marche. En fait, j'avais repris le même paramétrage que le .profile de l'AIX pour le .bashrc, et le paramètre LANG n'était pas le bon
1
UnGnU Messages postés 1158 Date d'inscription   Statut Contributeur Dernière intervention   158
 
Salut,

Merci du retour.
0
mamiemando Messages postés 33768 Date d'inscription   Statut Modérateur Dernière intervention   7 878
 
Bonjour,

En tout cas le réflexe de dubcek était bon, de nos jours l'avenir c'est l'utf8. Dit autrement, l'idéal serait de trouver une solution qui permet d'envoyer des mails avec la commande mail en uft8.

As-tu essayé par exemple ceci ?
https://stackoverflow.com/questions/3120168/how-to-send-special-characters-via-mail-from-a-shell-script

Bonne chance
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tbeghain Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   3
 
Je crois que j'ai trouvé la cause du problème. En effet, le problème provient des caractères accentués qui sont transformés en caractères spéciaux lors de l'édition par VI .
J'avais d'abord suspecté les paramètres de langue entre les deux serveurs, puis le paramétrage du rsync qui synchronise les deux serveurs, mais en fait, c'est un problème de VI.
En effet, lorsque dans la console, je fais un cat du fichier après le transfert AIX --> LINUX, j'ai bien les caractères accentués. par contre, dès le moment où je fais un VI du fichier, les caractères accentués sont transformés en "caractères spéciaux" et le mail n'aime pas du tout...

Si quelqu'un a une idée pour empêcher VI "d'interpréter" les caractères accentués, je suis preneur.

Cordialement,

Thierry
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
dans vi
:set encoding=utf-8
0
tbeghain Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour Dubcek,

Non, le fait de mettre :set encoding=utf-8 a fait que le problème est réapparu pour la session vi en cours uniquement bien sûr. La bonne méthode est d'initialiser le paramètre LANG à fr_FR.iso-8859-1. Pour l'instant, tout fonctionne correctement.
0
tbeghain Messages postés 58 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour,
Peut être que ça marche, mais j'utilise la commande mail dans mes scripts, pas sendmail. Et je ne vais pas tous les modifier alors que ça marche très bien sans rien modifier en adaptant le paramètre LANG. Mais merci tout de même d'avoir pris le temps de répondre.
0