스크립트로 데이터를 뽑아내고 나서 이를 파일로 저장한 후에 메일로 보내고 싶을 때가 있다.

그래서 간단한 메시지와 함께 메일에 파일을 첨부해서 보내는 모듈을 소개한다.

모듈명은 Multpart 이다.

인스톨 방법은 다음과 같다. 

[root@xxx /xxx/perlprogram/Net-SMTP-Multipart-1.6] perl Makefile.PL
WARNING: HTMLLIBPODS is not a known parameter.
Checking if your kit is complete...
Looks good
'HTMLLIBPODS' is not a known MakeMaker parameter name.
Writing Makefile for Net::SMTP::Multipart
[root@xxx /xxx/perlprogram/Net-SMTP-Multipart-1.6] make
pod2text Multipart.pm >README
pod2html Multipart.pm >Multipart.html
/usr/bin/pod2html: no title for Multipart.pm.
cp Multipart.pm blib/lib/Net/SMTP/Multipart.pm
Manifying blib/man3/Net::SMTP::Multipart.3
[root@xxx /xxx/perlprogram/Net-SMTP-Multipart-1.6] make install
Installing /usr/lib/perl5/site_perl/5.8.5/Net/SMTP/Multipart.pm
Installing /usr/share/man/man3/Net::SMTP::Multipart.3
Appending installation info to /usr/lib/perl5/5.8.5/i386-linux-thread-multi/perllocal.pod
[root@biz-anal /daum/perlprogram/Net-SMTP-Multipart-1.6]
 
인스톨을 했으니 이제 메일을 보내면서 파일을 전송해보자.
        my $to = $_[0];         #받는 사람
        my $from = $_[1];       #보내는 사람
        my $subject = $_[2];    #제목
        my $text =$_[3];        #내용
        my $file = $_[4];       #첨부파일 (파일위치와 파일명까지 써줘야함)

        my $smtp = Net::SMTP::Multipart->new('127.0.0.1'); #<- SMTP 서버 
        $smtp->Header(To   => $to,
                Subj => $subject,
                From => $from);
  $smtp->Text($text);
  $smtp->FileAttach($file);
  $smtp->End();
소스는 위와 같다.

이제 간단한 프로그램을 짜서 메일로 잘 오는지 테스트 해보면 된다.

'서버 이야기 > Perl 이야기' 카테고리의 다른 글

Term-ReadPassword를 이용해서 입력값을 숨김으로 받는 법  (0) 2011.04.15
PERL FTP 파일 다운로드  (0) 2010.11.18
PERL Error Handling  (0) 2010.11.18
PERL Subrountines  (0) 2010.11.18
PERL Regular Expressions  (0) 2010.11.18
Posted by 서오석
,