프로그램이 Linux/Unix 시스템에서 실행 중인 경우 Perl의 sendmail 도구를 사용하여 이메일을 보낼 수 있습니다.
다음은 이메일 전송을 위한 간단한 스크립트 예입니다.
예
#!/usr/bin/perl # 이메일 수신, 여기서는 내 QQ 이메일로 설정했습니다. 자신의 이메일로 수정해야 합니다. $to = ' [email protected] ' #
보내는 사람의 이메일 $from = ' [email protected] ' # 제목 $subject = ' Perl 코더 튜토리얼 이메일 테스트 보내기 ' ; $message = ' Perl을 사용하여 보낸 이메일입니다. ' ; 열기 ( MAIL , " |/usr/sbin/sendmail -t " ) # 메일 헤더 인쇄 우편 " 받는 사람: $to n " ; 우편 " 보낸 사람: $from n " ; 우편 " 제목: $subject n n " # 이메일 정보 인쇄 우편 $ 메시지 ; 닫기 ( 메일 ) ; " 이메일이 성공적으로 전송되었습니다 .
n " ; 위 프로그램을 실행하면 출력 결과는 다음과 같습니다.
이메일이 성공적으로 전송되었습니다.
정상적인 상황에서는 위의 이메일이 QQ 사서함에 차단됩니다. 작업 방법은 https://kf.qq.com/faq/120322fu63YV130805rYRFzu.html을 클릭하면 됩니다.
화이트리스트에 가입하시면 정상적으로 메일을 받으실 수 있습니다.
HTML 형식 이메일 보내기
HTML 형식으로 이메일을 보내려면 이메일 헤더에 Content-type: text/htmln을 추가하면 됩니다.
예
#!/usr/bin/perl # 이메일 수신, 여기서는 내 QQ 이메일로 설정했습니다. 자신의 이메일로 수정해야 합니다. $to = ' [email protected] ' #
보내는 사람의 이메일 $from = ' [email protected] ' # 제목 $subject = ' Coder Tutorial Perl 이메일 테스트 보내기 ' ; $message = ' <h1>Perl을 사용하여 보낸 이메일입니다<h1><p>안녕하세요. 저는 Coder Tutorial에서 왔습니다. 주소는 http:///www입니다. .codercto.com. </p> ' ; 열기 ( MAIL , " |/usr/sbin/
sendmail -t " ) # 메일 헤더 인쇄 우편 " 받는 사람: $to n " ; 우편 " 보낸 사람: $from n " ; 우편 " 제목: $subject n " ; 인쇄 우편 " 콘텐츠 유형: text/html n " # 이메일 정보 인쇄 우편 $ 메시지 ; 닫기 ( 메일 ) ; " 이메일이 성공적으로 전송되었습니다 .
n " ; 성공적으로 실행한 후 아래와 같이 이메일 내용을 확인하세요.
MIME::Lite 모듈 사용
윈도우 시스템을 사용하는 경우 sendmail 도구가 없습니다. 이제 Perl의 MIME:Lite 모듈을 메일 클라이언트로 사용하여 메일을 보낼 수 있습니다.
MIME:Lite 모듈 다운로드 주소는 MIME-Lite-3.030.tar.gz입니다.
여기서는 다운로드하지 않고 cpan을 사용하여 직접 설치합니다(루트 권한 필요).
$ cpan -i MIME::Lite…… /usr/bin/make install -- 확인
성공적으로 설치한 후 예를 보여드리겠습니다.
예
#!/usr/bin/perl MIME::Lite 사용 ; # 이메일 수신, 여기서는 내 QQ 이메일로 설정했습니다. 자신의 이메일로 수정해야 합니다. $to = ' [email protected] ' ; # 참조는 여러 개를 쉼표로 구분합니다. # $cc = '[email protected], [email protected]'; #보내는 사람의 이메일 $from = ' [email protected] ' # 제목 $subject = ' Perl 코더 튜토리얼 이메일 테스트 보내기 ' ; $message = ' 이것은 MIME::Lite 모듈을 사용하여 Perl을 사용하여 보낸 이메일입니다. ' ; $msg = MIME::Lite -> 신규 ( => 에서 $from , 받는 사람 => $to , 참조 => $cc , 제목 => $subject , 데이터 => $메시지 ) ; $msg - > 보내기 ; " 이메일이 성공적으로 전송되었습니다 .
n " ; 성공적으로 실행한 후 아래와 같이 이메일 내용을 확인하세요.
HTML 형식 이메일 보내기
HTML 형식으로 이메일을 보내려면 이메일 헤더에 Content-type: text/htmln을 추가하면 됩니다.
예
#!/usr/bin/perl MIME::Lite 사용 ; # 이메일 수신, 여기서는 내 QQ 이메일로 설정했습니다. 자신의 이메일로 수정해야 합니다. $to = ' [email protected] ' ; # 참조는 여러 개를 쉼표로 구분합니다. # $cc = '[email protected], [email protected]'; #보내는 사람의 이메일 $from = ' [email protected] ' # 제목 $subject = ' Perl 코더 튜토리얼 이메일 테스트 보내기 ' ; $message = ' <h1>이것은 Perl<h1><p>MIME::Lite 모듈을 사용하여 보낸 이메일입니다. </p><p>코더 튜토리얼에 따르면 주소는 http://www.codercto.com입니다. </p> ' ; $msg = MIME::Lite -> 새로운 ( => 에서 $from , 받는 사람 => $to , 참조 => $cc , 제목 => $subject , 데이터 => $메시지 ) ; #헤더 정보 추가 $msg -> attr ( " 내용 유형 " => " 텍스트/html " ) $msg - > 인쇄 ; " 이메일이 성공적으로 전송되었습니다 .
n " ; 성공적으로 실행한 후 아래와 같이 이메일 내용을 확인하세요.
첨부파일이 포함된 이메일 보내기
첨부파일이 포함된 이메일을 보내는 예는 다음과 같습니다.
예
#!/usr/bin/perl MIME::Lite 사용 ; # 이메일 수신, 여기서는 내 QQ 이메일로 설정했습니다. 자신의 이메일로 수정해야 합니다. $to = ' [email protected] ' ; # 참조는 여러 개를 쉼표로 구분합니다. # $cc = '[email protected], [email protected]'; #보내는 사람의 이메일 $from = ' [email protected] ' # 제목 $subject = ' Perl이 이메일 테스트를 보내는 코더 튜토리얼 ' ; $message = ' 이것은 MIME::Lite 모듈을 사용하고 첨부 파일을 포함하는 Perl을 사용하여 보낸 이메일입니다. ' ; $msg = MIME::Lite -> 신규 ( => 에서 $from , 받는 사람 => $to , 참조 => $cc , 제목 => $subject , 유형 => ' 다중 부분/혼합 ' # 첨부태그 ) ; $msg -> 첨부 ( 유형 => ' TEXT ' , 데이터 => $메시지 ) ; #첨부정보 지정 $msg -> 첨부 ( 유형 => ' TEXT ' , 경로 => ' ./codercto.txt ' , # 현재 디렉토리에 있음 파일 이름 => ' codercto.txt ' , 처리 => ' 첨부 ' ) ; $msg - > 보내기 ; " 이메일이 성공적으로 전송되었습니다 .
n " ; 성공적으로 실행한 후 아래와 같이 이메일 내용을 확인하세요.
여러 개의 $msg->attach를 사용하여 여러 개의 첨부 파일을 추가할 수 있습니다.