명령 줄에서 접미사로 첨부 파일이 포함 된 이메일을 보내는 방법은 무엇입니까?


10

방금 linode에 새로운 Ubuntu 10.04 LTS 서버를 설치했습니다. postfix를 포함한 몇 가지 기본 설치를 완료하려면 여기 에서 훌륭한 지침을 따르 십시오 .

첨부 파일을 사용하여 내 Gmail 주소로 이메일을 보내는 방법을 찾으려고하지만 방법을 찾을 수 없습니다. 이메일이 내 Gmail 계정에 도달 할 수 있음을 이미 확인했습니다.

결국 첨부 파일이있는 전자 메일을 보내려면 mutt을 사용해야합니다. SendEmails 도 잘 작동 하지만 postfix에서 동일한 작업을 명령 줄에서 수행하는 방법이 궁금합니다.

이 바보 같은 질문에 미리 감사드립니다.

답변:


14

postfix직접해야합니까? mailx -a, mutt, 나 mutt -a또한 사용하는 sendmail인터페이스를 -하지 않는 한 당신은 SMTP에 맞게 구성.

echo "테스트 메시지입니다"| mutt -s Test -a foo.zip-$ USER
echo "테스트 메시지입니다"| 메일 -s 테스트 -a foo.zip $ USER

(bsd-mailx에서는 옵션이 -A대신 사용됩니다.)


어쨌든 여기에 "postfix"예제가 있습니다.

교체 $USER, 사용자의 환경에 맞게 콘텐츠 형식 및 파일 이름을. 예에서는 메시지를 자신에게 보내고 foo.zip현재 디렉토리에 ZIP 파일이 있다고 가정합니다 .

(printf "%s\n" \
    "Subject: test" \
    "To: $USER" \
    "Content-Type: application/zip" \
    "Content-Disposition: attachment; filename=foo.zip" \
    "Content-Transfer-Encoding: base64" \
    "";
 base64 foo.zip) | sendmail "$USER"

(MIME 멀티 파트 메시지 작성은 독자에게 실습으로 남았습니다.)


mail -a foo.zipfoo.zip와 같이 메시지에 첨부되지 않습니다 mutt.
nr

@ nicolai.rostov :에 따라 다릅니다 mail. 그것은 가보 메일에서 그렇게한다.
user1686

7

Postfix는 MTA (Mail Transfer Agent) 입니다. 우편물의 배달을 처리하는 것입니다. 우편물을 수령하여 경로의 다음 지점으로 보내십시오. Postfix는 우편 직원으로, 봉투를 가져 와서 동료의 도움을 받아받는 사람에게 가져가는 일을합니다.

여기에서 요구하는 것은 비서 업무입니다. 문서를 봉투에 넣도록 조립하는 것입니다. 그것은 Postfix의 일이 아닙니다 : 그것은 메일 사용자 에이전트 (MUA)를 위한 일입니다 . grawity가했던 것처럼 몇 줄의 쉘로 메일을 만들기 위해 조각을 조립하는 조잡한 MUA를 작성할 수 있지만 Mutt는 실제로이 작업에 좋은 도구입니다.


4

커맨드 라인에서 나는 "sendemail"을 사용하고 싶다. 우분투 / 데비안에서는 커맨드 라인에서 다음과 같이 설치할 수있다.

apt-get install sendemail

그런 다음 간단히 localhost (Postfix)를 MTA로 사용하도록 지시 할 수 있습니다.

실제로 방금 localhost : 25가 기본값이라는 것을 알았습니다.

-s SERVER[:PORT]          smtp mail relay, default is localhost:25

그런 다음 -a 플래그를 사용하여 첨부 파일을 추가하십시오.

sendemail -f sender@example.com -t recipient@example.com -m "This is the message" -u "This is the subject" -a file1.zip file2.zip

1

mailx 12.4에는 파일 첨부 옵션이 있습니다.

-a 파일
    주어진 파일을 메시지에 첨부하십시오.

예를 들면 다음과 같습니다.

[gawad @ centos 데스크탑] $ mail -s "pine"-a pine.rpm.gz root @ localhost Enter
이것은 당신이 요청한 pine 소프트웨어입니다 Enter
.Enter
EOT
[gawad @ centos 데스크탑] $ 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.