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