Hentikan cron mengirimi saya email


10

Bagaimana saya bisa menghentikan cron mengirimi saya email hasil pekerjaan yang saya jadwalkan?

Jawaban:


15

Dengan mengatur variabel lingkungan "MAILTO" sebagai ""

Sesuatu seperti:

SHELL=/bin/bash
MAILTO=



01 * * * *  /your/path/to/script/here.sh

12

Jika Anda ingin satu pekerjaan untuk menghentikan email, Anda cukup menambahkan> / dev / null 2> & 1 padanya

Sebagai contoh:

0 * * * * /home/script >/dev/null 2>&1

1
Jika Anda yakin bahwa satu proses akan selesai sebelum yang berikutnya dimulai, ada baiknya mengarahkan ulang output ke file bernama daripada ke / dev / null: yang memberikan opsi untuk memeriksa apa yang terjadi pada proses terakhir jika Anda mencurigai adanya masalah.
mas

4

Cron hanya mengirim email kepada Anda jika ada output, baik pada stdoutatau stderr.

Jika skrip yang Anda tulis, kurangi penggunaannya - hapus yang tidak perlu echoatau printpernyataan. Mengarahkan stdoutke /dev/nulljuga merupakan solusi yang valid:

2 * * * * /my/script > /dev/null

Jika Anda masih mendapatkan pesan setelah melakukan itu, maka output adalah pada stderr, sehingga harus menjadi kesalahan, yang harus Anda menyelesaikan .. Jika tidak, Anda dapat mengarahkan stderrke /dev/nulldengan ..

2 * * * * /my/script > /dev/null 2> /dev/null

..tidak mengacuhkan pesan kesalahan umumnya adalah ide yang buruk! (Bagaimana Anda tahu kapan pekerjaan cron rusak?)

Anda dapat mengarahkan output perintah tertentu dari stderr ke stdout menggunakan 2>&1- misalnya:

command_which_prints_messages_to_stderr 2>&1 # redirect stderr to stdout

..then langsung stdoutke /dev/nulldalam pekerjaan cron Anda - dengan cara itu Anda membungkam perintah keras, tanpa kehilangan pesan kesalahan

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.