web-dev-qa-db-fra.com

Comment configurer une tâche cron sous OS X pour exécuter une commande curl à une heure précise chaque jour?

J'ai une commande CURL que je veux exécuter tous les jours à 3 heures du matin, mais je ne suis pas sûr de la façon de la configurer et les guides sont tous étranges.

Supposons que je possède beaucoup d’expérience terminal/bash, mais que je n’ai jamais installé de cron auparavant.

Est-il possible que la tâche cron réveille mon ordinateur, même s'il est en veille et que le capot est fermé (macbook pro), juste pour exécuter cette commande curl puis la remettre en veille?

Comment puis-je le configurer de toute façon?

18
marcamillion

Commencez par lancer la commande:

crontab -e

Cela ouvrira la crontab pour votre utilisateur dans un éditeur de texte. Cron utilise une notation spécifique pour les travaux planifiés. Le format ci-dessous montre les champs pour une entrée de crontab utilisateur (qui doivent être séparés par des tabulations).

min  hour  day_of_month  month  day_of_week  command

Pour programmer une commande curl à exécuter tous les jours à 3 heures du matin, vous pouvez insérer la ligne:

0  3  *  *  *  curl args...

Notez que les minutes et l'heure correspondent à 3h du matin (remarque: cron utilise le format d'heure sur 24 heures, pas de matin ni de midi). Les astérisques qui suivent signifient tous les jours du mois, tous les mois, tous les jours de la semaine.

Cron ne pourra pas réveiller votre ordinateur du sommeil, mais vous pourrez trouver ce post utile crontab pour sortir osx du sommeil

18
diametralpitch

si vous aimez le faire de la manière graphique, je peux vous recommander CronniX de roaringapps https://roaringapps.com/app/cronnix

0
konqui