이메일을 보내고 표시하는 방법

이메일을 보내고 표시하는 방법

출력이 이메일로 전송되고 감시(모니터링)되는 스크립트를 실행하려고 하는데 다음 코드를 사용하려고 합니다.

    this are the output: >emailmessage
    echo "output here" >>emailmessage
    /bin/mail -s "$SUBJECT" "$EMAIL" < $emailmessage

결과가 포함된 이메일이 전송되지만 내 터미널에는 표시되지 않습니다. 현재 echo "email sent!"스크립트 실행이 완료되었음을 알리기 위해 이것을 사용하고 있습니다. 어떻게 발송하고 표시되도록 할 수 있나요?

답변1

스크립트가 제어 터미널을 사용하여 실행되고 있다고 가정하면(어딘가에서 출력을 볼 수 있음) 다음 줄을 추가하면 됩니다.

/bin/mail -s "$SUBJECT" "$EMAIL" < $emailmessage
cat $emailmessage

답변2

echo "To: $EMAIL"
echo "Subject: $SUBJECT"
echo ""
echo "$emailmessage" | tee >(/bin/mail -s "$SUBJECT" "$EMAIL")
echo "sent!"

이것은 프로세스 대체를 사용하므로 bash 또는 ksh를 사용하고 있다고 가정합니다(또는 이와 유사한 쉘의 매뉴얼 페이지를 확인하십시오).

관련 정보