2015-01-15 4 views
0

생성 된 CSV 파일을 스크립트를 사용하여 정기적으로 보내야합니다. UUENCODEmailx을 동일하게 사용하고 있습니다.ksh에서 전자 메일 성공 확인을 확인하는 방법이 있습니까? UNIX 쉘 스크립팅

하지만 이메일이 성공적으로 전송되었음을 알 수있는 방법이나 방법이 있는지 알아야합니까? 어떤 종류의 승인 또는 피드백 또는 무언가 ???

모든 오류가보고 될 수 있습니다. 또한 파일은 기밀이며 일부 외부 경로를 벗어나는 것이 아닙니다.

편집 : 코드는 메일 링에 사용됩니다.

subject="Something happened" 
to="[email protected]" 
body="Attachment Test" 
attachment=/home/iv315/timelog_file_150111.csv 

(cat test_msg.txt; uuencode $attachment somefile.csv) | mailx -s "$subject" "$to" 
+0

AFAIK 메일 수신 확인을위한 안전한 방법이 없으며 항상 클라이언트의 호의를 필요로합니다. 또한 나가는 메일을 서버에서 나가는 지점에서 추적하는 기술적 방법은 없습니다. 수취인에게 메일을 안전하게/기밀로 전달하는 대신 보안이 설정된 (웹, 파일) 서버에서 정보를 가져 오는 것이 좋습니다. 여기에서 액세스 및 권한 부여를 효과적으로 제어 할 수 있습니다. – geert3

답변

1

당신은 예를 들어, mailx 등을 사용하는 경우 명령 줄에서 nail 당신은 항상 미세 설명서를 따라하는 sendwait 옵션을 사용할 수 있습니다

When sending a message, wait until the mail transfer agent 
exits before accepting further commands.  
If the mail transfer agent returns a non-zero exit status, 
the exit status of mailx will also be non-zero. 

sendwait을 그리고 당신은 또한 To: 필드에 메일을 이렇게 추가 할 수 있습니다 메시지를 받으면 적어도 보내는 프로세스가 성공할 가능성이 있습니다.

+0

코드와 관련하여 좀 더 자세히 말씀해주십시오. 방금 Shell과 함께 시작했지만 아직 그렇게 편안하지 않았습니다. 질문 설명에 이메일을 보내는 데 사용중인 코드가 업데이트되었습니다. – Sachin

+0

내가 틀렸다면 수정 해주세요.하지만 이는 최종 발송물이 아닌 보내는 메일 서버 (예 : ISP)의 발신 메일 서버에만 전달된다는 것을 보증합니다. 또한 이것은 기밀성 문제에 대한 해결책이 아닙니다. 제 제안은 메일이 배달 보증 또는 기밀 보장에 대해 좋은 일치는 아니라는 것입니다. – geert3

+0

@ geert3 당신 말이 맞습니다. –