UNIX 컴퓨터에서 보낸 이메일 본문의 HTML 파일을 이메일로 보내야합니다. HTML 파일을 다음과 같이 호출하겠습니다.hello.html
에서 다음 코드를 사용하고 있습니다 bash script
.
(
echo "To: [email protected]"
echo "Subject: Report"
echo "Content-Type: text/html"
echo
cat hello.html
echo
) | /usr/sbin/sendmail -t
위의 코드는 저에게 완벽하게 작동합니다. 이제이 이메일에 zip 파일도 첨부하고 싶습니다. 그렇게 할 수있는 방법이 있습니까?
나는에만 사용하도록 제한하고 mail
, mailx
하고 /usr/sbin/sendmail
.
zip 파일이 첨부 된 실제 이메일을 직접 보내고 원시 콘텐츠를 살펴 보는 것이 좋습니다.
텍스트 이메일에 다양한 파일 형식을 포함하는 방법을 지정하는 MIME 표준에 따라 이메일 형식 이 지정됩니다.
귀하의 경우 최상위 콘텐츠 유형 은 multipart / alternative 또는 multipart / mixed와 같습니다 . 그 안에는 자체 Content-type을 가진 두 개 이상의 부분 또는 섹션이 있습니다. 하나는 application / zip 유형 입니다. 응용 프로그램 / 우편 섹션은 zip 파일의 텍스트 인코딩 (예 : 자료 64)를해야합니다.
다음은 샘플입니다.
From: John Doe <[email protected]>
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="XXXXboundary text"
This is a multipart message in MIME format.
--XXXXboundary text
Content-Type: text/plain
this is the body text
--XXXXboundary text
Content-Type: text/html
<html>
...Body of email in HTML format...
</html>
--XXXXboundary text
Content-Type: application/zip;
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="test.zip"
BASE64 ENCODING TEXT HERE
--XXXXboundary text--
추가 정보 : MIME를 사용한 이메일 파일 첨부
질문의 근원으로 돌아가서 어떻게해야합니까? 나는 이와 같은 이메일을 구성하는 데 도움이되는 독립형 도구에 익숙하지 않지만 유용한 것을 찾을 수 없다면 놀랄 것입니다. 이메일 클라이언트 중 하나가 명령 줄 / 대량 작업을 지원할 수 있습니다. 하지만 최악의 경우에는 모두 ASCII 텍스트 일 뿐이므로 HTML 이메일로 수행하는 작업을 따라 수동으로 쉽게 구성 할 수 있습니다. 하지만 메일 에이전트로 전송하기 전에 임시 파일에 메시지를 작성하는 것이 좋습니다. (많은 양의 텍스트를 쉽게 저장하려면 "여기 문서"를 참조하십시오.)
표시된대로 zip 파일을 Base 64로 변환해야합니다. 거의 모든 Linux 설치에는 base64
유틸리티 또는 이와 동등한 기능 이 있어야합니다 . zip을 전달하고 적절한 시간에 이메일 파일에 추가하기 만하면됩니다.
base64 test.zip >> my-email-file.txt
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다