특정 명령이 실패할 때 오류 메시지를 이메일로 보내려는 쉘 스크립트가 있습니다. 이메일을 전혀 보내지 않거나 ATT000001.bin이라는 첨부 파일이 포함된 이메일(Outlook에서)을 보냅니다. 본문에 오류가 포함된 일반 텍스트 이메일을 원합니다.
내가 현재 가지고 있는 것의 일부는 다음과 같습니다.
msg=`scp -i $sshkeyfile $filename [email protected] 2>&1`
msg=`echo $msg | tr -d "\n\r"`
if [ $? -eq 0 ]
then
rm $filename
else
echo $msg | mail -s "subject line" [email protected]
fi
인터넷에서는 캐리지 리턴 문자로 인해 Outlook이 문자열을 첨부 파일로 처리한다고 말합니다. 이것이 바로 반환 값을 제거하는 이유입니다(콘솔에 인쇄하여 작동함을 확인했습니다). 현재로서는 메일이 전혀 수신되지 않습니다.
문자열을 메일로 전달하기 위해 웹에서 찾은 다양한 방법을 시도해 보았습니다. 이메일을 보내 보았습니다. 이메일을 받지 못하거나 첨부 파일이 포함된 이메일을 받았습니다.
이 문자열을 이메일 본문으로 보내려면 어떻게 해야 합니까? 감사해요!