Ответы:
Самый простой способ, вероятно, заключается в tee
том, чтобы послать как stderr, так и stdout:
echo "Script finished on date" | tee /dev/stderr \
| /usr/bin/Mail -s "Script complete" "myaccount@myserver.com"
tee
дублирует входные данные для нескольких адресатов, включая стандартный вывод. По умолчанию и stderr, и stdout выходят на экран; вы перенаправляете стандартный вывод Mail
, оставляя только стандартный вывод на экран.
Если по какой-то причине он вам нужен в stdout, вы можете перенаправить его обратно с помощью подоболочки (или несколькими другими способами):
(
echo "Script finished on date" | tee /dev/stderr \
| /usr/bin/Mail -s "Script complete" "myaccount@myserver.com"
) 2>&1
exec &> $LOGFILE
), а затем восстановите стандартный вывод, переместите файл в стандартный вывод и отправьте его по почте.