Il modo rapido e sporco per inviare un allegato è quello di uuencodificare il file e inviarlo per posta.
uuencode report.pdf report.pdf | mail -s "Here is the report" [email protected]
Se vuoi farlo facilmente e creare un messaggio MIME corretto, puoi installare mutt e usare il flag -a per allegare il tuo messaggio.
Se non vuoi installare altro, puoi creare manualmente il tuo messaggio MIME oppure utilizzare il modulo perl MIME :: Entity per aiutarti:
#!/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;