comment faire exécuter cron sur OSX 10.6.2?

10

Remarque: cette question n'est pas sur la façon de modifier l'onglet cron mais sur la façon de faire fonctionner cron


  1. J'ai édité mon cron en utilisant env EDITOR=joe crontab -e
  2. Je suis entré 1 * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txtet ça ne fait rien bien que le cron soit correctement configuré . Vérifié via Cronnix et visualisé le cron dans / var / cron / tabs. L'édition de crontab à l'aide de Cronnix me donne les mêmes résultats.

Si je lance echo 'test' > /Users/radek/Backup/rationalvmware/test.txtmanuellement, il crée un fichier comme prévu, donc je suppose que la commande que je fournis à cron est correcte.

Y a-t-il quelque chose de spécial que je dois faire pour faire fonctionner cron sur OSX? Comment puis-je vérifier que le cron fonctionne.

Quel est l'équivalent de / var / log / messages sur OSX? Je peux voir dans les messages sur SuSE que cron fonctionne.

Radek
la source
1
En passant: notez que crons'exécute dans un environnement différent de celui de votre propre commande de test. Par exemple: vous pourriez souvent avoir besoin de chemins absolus.
Arjan

Réponses:

8

Je doute que vous ayez attendu 1 minute après l'heure pour votre test. Pour exécuter chaque minute:

0-59 * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txt
Arjan
la source
De Mavericks ou version ultérieure, une alternative en vous envoyant une notification0-59 * * * * osascript -e "display notification \"$(date)\" with title \"Cron test\""
Wardw
10

L'utilitaire cron est lancé par launchd lorsqu'il voit l'existence de /etc/crontabou de fichiers dans /usr/lib/cron/tabs. Il ne devrait pas être nécessaire de le démarrer manuellement . (Voir les pages de manuel .)

Pour voir les journaux d'OS X, vous pouvez utiliser l'utilitaire de console.

Hieu
la source
Sur le mont. Lion cet emplacement est en fait lié plusieurs fois, conduisant finalement à:, /private/var/at/tabs/FYI
Andrew Burns
9

Deux autres moyens sont à utiliser:

*/1 * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txt

ou

* * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txt

Ces deux tournent toutes les minutes.

roue ferreuse
la source
3

Tout d'abord, vous devez définir votre $EDITORvariable sur quelque chose de raisonnable, car ce que vous avez défini sur quelque chose que vous ne voulez pas. Réglez-le comme ceci:

EDITOR=joe

Vous pouvez passer joeà un autre éditeur de texte, tel que nanoou vim.

Ensuite, vous voudrez éditer votre crontab, ce qui se fait comme suit:

crontab -e

Ensuite, vous mettrez le texte cronà utiliser.

Wuffers
la source
J'ai mis à jour ma question. Je peux éditer le cron comme je le fais, mais le cron ne fonctionne pas ....
Radek
Il n'y a aucune raison de joene pas pouvoir être utilisée. La clé est celle qui crontab -eest utilisée.
pause jusqu'à nouvel ordre.
joe est le meilleur
nkadwa
3

Si vous souhaitez utiliser cron sur Mountain Lion, vous devriez jeter un œil ici: https://coderwall.com/p/ry9jwg ou simplement ouvrir le terminal et exécuter sudo touch /etc/crontab. Après cela, vos tâches dans / usr / lib / cron / tabs devraient être gérées par cron.

CKIDOW
la source