Remplacer MAILTO pour une seule entrée crontab


20

Nous avons un compte de rôle au travail qui a une assez grande crontab. Son MAILTO est pointé vers une adresse partagée, de sorte qu'un certain nombre d'entre nous soient avertis en cas de défaillance.

Je voudrais ajouter une entrée à ce crontab, mais je veux seulement être averti si quelque chose ne va pas. Existe-t-il un moyen de modifier MAILTO pour cette seule entrée, ou autrement atteindre mon objectif?


Une autre approche de celles suggérées jusqu'à présent consiste à utiliser la fonction qui envoie un e-mail à l'utilisateur qui exécute le travail, alors créez un autre utilisateur uniquement pour ce travail et transférez ses e-mails à vous.
Hayden Thring

Réponses:


21

Vous pouvez toujours simplement faire:

MAILTO=you
* * * ...  your cron job
MAILTO=normal.destination

1
Est-ce que les gens qui ont voté en faveur de cela l'ont vraiment testé? Si oui, quelle implémentation cron?
user1338062

Je l'ai testé avec le cron ICS / Vixie fourni avec Ubuntu 14.04 ("3.0pl1-124ubuntu2"), et cela fonctionne bien là-bas.
Nils Toedtmann

Moche, mais à peu près la seule façon de régler ce problème. Travaux!
stamster

10

Vous pouvez toujours diriger toutes les sorties vers la commande de messagerie avec l'adresse correcte dans un sous-shell. Tant qu'il n'y a rien sur STDOUT ou STDERR cron n'enverra pas l'email

10 * * * * sh -c 'cette commande 2> & 1 | mail otheraddress@foo.com '


1
Cela ne fonctionne pas - la commande "mail" envoie, qu'elle obtienne ou non une sortie. Je reçois donc un message vide sur le succès, alors que ce que je veux, c'est pas de message sur le succès.
Mike

5
Agréable! Et pour éviter les e-mails vides de la commande mail, utilisez ce paramètre: -e (ou -E pour certains ..)

3

Je ne me souviens pas si cron prépare le fichier à lire dans les variables d'environnement, donc je ne sais pas si vous pouvez changer MAILTOplusieurs fois dans un seul fichier. Mais vous pouvez toujours le diviser en un autre fichier et le mettre /etc/cron.d/fooavec un MAILTO=some@email.tld.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.