나는 두 개의 서로 다른 파일 과 에 을 기록 rsync
하는 간단한 스크립트를 실행하고 있습니다 .stdout
stderr
rsync_stdout.log
rsync_stderr.log
다음을 사용하여 rsync_stderr.log의 내용을 이메일로 보내려고 할 때:
echo $(cat rsync_stderr.log) | ssmtp [email protected]
이메일 본문이 비어 있지만 이렇게 하면 다음과 같습니다.
echo $(cat rsync_stdout.log) | ssmtp [email protected]
그런 다음 문제 없이 이메일 본문에 표준 출력을 기록할 수 있습니다.
rsync
출력 파일과 관련이 있습니까 stderr
?
자세한 정보 표시 모드에서 ssmtp를 실행합니다.
[<-] 250 2.1.5 OK b48smxxx70wrb.1 - gsmtp
[->] DATA
[<-] 354 Go ahead b48smxxxxxx70wrb.1 - gsmtp
[->] Received: by XXXNAS (sSMTP sendmail emulation); Tue, 19 Dec 2017 01:14:47 +0100
[->] From:"XXXNAS" <XXXNAS>>
[->] Date: Tue, 19 Dec 2017 01:14:47 +0100
[->] rsync: delete_file: unlink(.AppleDB/log.0000000001) failed: Permission denied (13)
[->] rsync: delete_file: unlink(.AppleDB/lock) failed: Permission denied (13)
[->] rsync: delete_file: unlink(.AppleDB/db_errlog) failed: Permission denied (13)
[->] rsync: delete_file: unlink(.AppleDB/cnid2.db) failed: Permission denied (13)
[->] rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1178)
[->] [sender=3.1.2]
[->]
[->] .
[<-] 250 2.0.0 OK 1513642487 b48sxxxxxxrb.1 - gsmtp
[->] QUIT
[<-] 221 2.0.0 closing connection b4xxxxxwrb.1 - gsmtp
그래서 전송되는 텍스트를 볼 수 있지만 이메일 본문은 비어 있습니다.
저도 그렇게 해봤는데 그것도 안되네요.ssmtp [email protected] < rsync_stderr.log
답변1
사용자 almendrico가 나를 경로에 올려놓은 후 다음을 사용했습니다.
sed 's/[\:]//g'
이 :
문자를 삭제하세요.
매우 우아하지는 않지만 효과적입니다.