2017-05-01 12 views
0

Amazon Linux에서 bash 및 sendmail을 사용하여 전자 메일을 보내는 데 문제가 있습니다. 내가 갖고있는 bash 스크립트에서sendmail을 사용하여 쉘 스크립트에서 전자 메일을 보낼 수없는 이유는 무엇입니까?

echo "Subject: My subject" >> /tmp/email.txt 
    echo "" >> /tmp/email.txt 
    cat /tmp/out.txt >> /tmp/email.txt 
    sendmail $EMAIL_ON_FAILURE < /tmp/email.txt 

참고로 본문은 /tmp/out.txt의 내용이어야합니다. 사실 나는 "$ EMAIL_ON_FAILURE"이 비어 있지 않은 것을 반향을 통해 확인했지만, 내받은 편지함 (또는 스팸 폴더)에있는 이메일을 찾지 못했습니다. 위와 관련하여 뭔가 잘못되었거나 전자 메일이 실제로 전송되었다는 것을 내 시스템에서 확인할 수있는 다른 방법이 있습니까?

+0

이 상세 모드 당신에게 메시지 보내기 :'센드 메일 -i -v $ EMAIL_ON_FAILURE AnFi

+0

이 명령을 실행하는 호스트가 전자 메일을 올바르게 라우팅하도록 구성되었는지 확인 했습니까? – alvits

답변

0

Sendmail은 Mail-transport-agent입니다. mail-user-agent가 필요합니다. '메일'명령을 사용하여 시도, 즉 사람의 페이지에서

mail -s "${SUBJECT}" ${EMAIL_Address} < ${FILE} 

:

센드 메일은 사용자 인터페이스 루틴으로 구성되지에게; 다른 프로그램 은 사용자 친화적 인 프론트 엔드를 제공합니다. sendmail은 미리 형식이 지정된 메시지 을 전달하는 용도로만 사용됩니다.

:
데일

+0

OP에 SMTP 릴레이가없는 경우 작동하지 않습니다. 솔루션은 작동중인 smtp 릴레이 – alvits

+0

나를 잘못 이해하지 마라 나는 당신의 대답을 완전히 이해하고있다. 내 의견은 OP의 게시물 분석을 기반으로하고있다. 나는'sendmail'이 우호적 인 프론트 엔드 툴이 아니라는 점에 동의한다. 시스템이 올바르게 구성되어 있는지 확인하십시오. 그것은 작동하지 않았기 때문에 아마 시스템이 전자 메일을 보내는 것을 지원하지 않는다는 나의 의견입니다. 내 건설적인 의견에 만족하지 않는다면 그렇게 말씀 해주십시오. 기꺼이 제거해 드리겠습니다. – alvits