
at/batch에 대한 매뉴얼 페이지에서 다음과 같이 말합니다.
The user will be mailed standard error and standard output from his
commands, if any. Mail will be sent using the command /usr/sbin/sendmail.
If at is executed from a su(1) shell, the owner of the login shell will
receive the mail.
하지만 어떤 이메일 주소로 전송되는지 구성하려면 어떻게 해야 할까요?
cron에서는 MAILTO 환경 변수를 사용할 수 있지만 또는 내부에서는 이를 볼 수 없습니다 at
.batch
답변1
at 호출에서 그렇게 하는 방법은 보이지 않지만 다음을 통해 호출하는 명령을 사용하여 다음과 같은 작업을 수행할 수 있습니다.
$ at 16:00
at> some-command [arguments, &c.] 2>&1 | sendmail [-f <from-address>] <recipient>
at> ^D
명령이 실행되면 지정된 수신자에게 전달하기 위해 해당 출력을 sendmail로 전달하며 방금 실행한 빠른 테스트에서는 이것이 작동합니다.
물론 이미 some-command의 출력을 다른 곳으로 리디렉션하고 있다면 운이 좋지 않을 수도 있습니다. 하지만 그런 경우에는 언제든지 출력을 tee(1)하거나 at에 마지막 줄을 추가할 수 있습니다. 메시지를 푸시하기 위해 sendmail을 호출하는 작업입니다.