1 votes

Ligne de commande : Envoi d'un fichier zip par e-mail

J'utilise "mail" pour envoyer des e-mails à partir de la ligne de commande sur mon OSX 10.6.

le "< nom de fichier" ne fonctionne cependant pas très bien, car je ne vois pas vraiment le fichier comme "pièce jointe" sur un client de messagerie standard. Existe-t-il une solution à ce problème avec les outils standard préinstallés avec OSX 10.6 ?

3voto

Daisuke Shimamoto Points 1141

La méthode la plus simple et la plus rapide pour envoyer une pièce jointe consiste à encoder le fichier et à l'envoyer par courrier.

uuencode report.pdf report.pdf | mail -s "Here is the report" bossman@company.com

Si vous voulez le faire facilement et construire un message correctement encodé MIME, vous pouvez installer mutt, et utiliser le drapeau -a pour attacher votre message.

Si vous ne voulez pas installer autre chose, vous pouvez construire votre propre message MIME à la main, ou utiliser le module perl MIME::Entity pour vous aider :

#!/usr/bin/perl
use MIME::Entity;

$message = MIME::Entity->build(
  Type    => "multipart/mixed",
  From    => "me\\@company.com",
  To      => "bossman\\@company.com",
  Subject => "Report attached" );

$message->attach(Data=>"Here is the report, as promised.");

$message->attach(
  Path     => "./report.pdf",
  Type     => "application/pdf",
  Encoding => "base64");

open MAIL, "| /usr/sbin/sendmail -t -oi";
$message->print(\\\*MAIL);
close MAIL;

0voto

mspasov Points 6152

La solution la plus simple à votre situation actuelle est d'utiliser uuencode pour encoder le format du fichier et l'envoyer par courrier. Essayez cette ligne :

uuencode /your/file.zip file.zip | mail -s subject recipient@mail

Une autre possibilité est d'utiliser perl/Python scripts pour faire ce travail (peut-être mieux), mais la solution ci-dessus fonctionne tout simplement(tm).

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X