Pengaturan MAILTO=user@example.org
dalam /etc/cron.daily/foo
tidak berfungsi. Keluaran skrip tidak dikirim ke user@example.org.
Halaman di http://www.unixgeeks.org/security/newbie/unix/cron-1.html juga menyarankan solusi sederhana:
File /etc/cron.daily/foo
sekarang berisi yang berikut ini:
#!/bin/sh
/usr/bin/script 2>&1 | mailx -s "$0" stefanl@example.org
Ini akan mengirim email ke 'stefanl@example.org' dengan subjek yang sama dengan path lengkap skrip (mis /etc/cron.daily/foo
.).
Inilah yang dikatakan Unixgeeks.org tentang ini:
Output dari cron
Seperti yang telah saya katakan sebelumnya, output dari cron akan dikirimkan ke pemilik proses, atau orang yang ditentukan dalam variabel MAILTO, tetapi bagaimana jika Anda tidak menginginkannya? Jika Anda ingin mengirimkan output ke orang lain, Anda bisa mengirim output ke mail perintah. misalnya
cmd | mail -s "Subject of mail" pengguna
Terkadang, saya hanya ingin menerima kesalahan dari cronjob, bukan stdout, jadi saya menggunakan trik ini. Sintaks mungkin terlihat salah pada pandangan pertama, tetapi yakin itu berfungsi. Cronjob berikut akan mengirim STDOUT ke / dev / null, dan kemudian akan menangani STDERR melalui pipa.
doit 2>&1 >/dev/null | mailx -s "$0" stefanl@example.org
Hal yang sama, tetapi kirim ke syslog:
doit 2>&1 >/dev/null | /usr/bin/logger -t $ME
Juga lihat jawaban saya di ServerFault to Cronjob stderr ke file dan email
/etc/crontab
tidak menentukan standar.