Comment configurer un crontab pour exécuter à l'heure
Question
Comment puis-je configurer mon crontab pour exécuter X script à 11:59PM tous les jours sans m'envoyant un email ou en créant de tous les journaux?
Droit maintenant, mon crontab ressemble à quelque chose comme ceci
@daily /path/to/script.sh
La solution
Quand vous faites la commande " crontab-e, essayez ceci:
59 23 * * * /usr/sbin/myscript > /dev/null
Cela signifie que:À 59 Minutes et 23 Heures tous les jours (*) tous les mois sur chaque jour de la semaine, exécuter myscript.
Voir man crontab pour plus d'informations et d'exemples.
Autres conseils
Suite svrist réponse, en fonction de votre shell, le 2>&1 devrait aller après > /dev/null ou vous pourrez tout de même voir la sortie stderr.
La suite de silence à la fois la sortie standard stdout et stderr:
59 23 * * * /usr/sbin/myscript > /dev/null 2>&1
La suite de silences stdout, mais stderr apparaît toujours (via la sortie standard stdout):
59 23 * * * /usr/sbin/myscript 2>&1 > /dev/null
L'Advanced Bash Scripting Guide du chapitre sur IO redirection est une bonne référence--recherche de 2>&1 pour voir quelques exemples.
Vous allez avec la réponse précédente recevoir des e-mail avec n'importe quel texte écrit vers stderr.Certaines personnes rediriger cet écart trop, et assurez-vous que le script écrit un journal de la place.
... 2>&1 ....