#!/usr/bin/perl -wd use MIME::Lite; use strict; die "usage: $0 file" unless @ARGV == 1; open my $fh, "<$ARGV[0]" or die "Can't open $ARGV[0]: $!"; local( $/ ) = undef; my $data = <$fh>; close $fh; my $msg = MIME::Lite->new( From =>'me@myhost.com', To =>'you@yourhost.com', Subject =>'A message with 2 parts...', Type =>'multipart/mixed' ); $msg->attach( Type => 'TEXT', Data => $data, ); $msg->attach( Type => 'text/plain', Path => $ARGV[0], Filename => $ARGV[0], Disposition => 'attachment' ); $msg->send;