11
votes

Cron Api: Y a-t-il une telle chose?

Y a-t-il une telle chose comme une API de cron?

Je veux dire, y a-t-il une manière programmatique d'ajouter / supprimer des emplois cron sans entraver les orteils de Cron?


0 commentaires

5 Réponses :


-2
votes

Pas comme tel, bien que la script d'une modification utilisant CronTab n'est pas si difficile. Ce genre de chose (travaillant à travers des outils de texte au lieu d'attendre une API au niveau du code sur des installations système) fait partie du paradigme UNIX, vraiment.

Alternativement, une "API Cron" assez triviale peut être mise en œuvre à l'aide d'un script rapide dans une langue que vous préférez et "sommeil". :)


0 commentaires

9
votes

L'API de Unix Cron est le système de fichiers. Il y a un crontab commande pour l'installation / édition crontab utilisateur. La principale raison de la commande CRONTAB est d'appliquer des restrictions de sécurité sur les utilisateurs (par exemple, /etc/cron.low et /etc/cron.deny ).

système Les onglets cron ne sont que des fichiers placés dans /etc/cron.d (et cron.daily / hebdomadaire / mensuel). Aucun soin particulier n'est nécessaire; Il suffit de déposer le fichier en place. Pour citer le haut de / etc / crontab : xxx

Le format est identique à des crontabs utilisateur, documenté à Crontab (5), mais avec un champ utilisateur juste avant la commande. Où espace signifie blanchiment (un ou plusieurs) et les deux 0 et 7 signifie dimanche:

minute espace heure espace jour-de-mois espaces mois espace jour - Semaine espace utilisateur espace commande

Utilisation accès aux fichiers POSIX normale ne sera pas marcher sur les pieds de Cron. N'oubliez pas que renommer aura toujours le nom de cible pointant vers l'ancien ou nouveau fichier, jamais rien à rien. Vous pouvez donc écrire le fichier à un nouveau nom, puis renommez-le sur votre ancien ancien.

De nombreuses langues de programmation ont des API pour aider à écrire des crontabs. Par exemple, CPAN (Perl) a plusieurs .


2 commentaires

Donc, si je dépose un fichier dans /etc/cron.d/, il sera ramassé par Cron sur sa prochaine itération sans danger? Je n'ai pas besoin de traverser Crontab?


@ Jean-Lou Dupont: correct. Vous pouvez simplement déposer le fichier dans /etc/cron.d.



0
votes

Vous pouvez certainement envelopper autour de lui. Voir le chaque fois que vous GEM Ruby.


0 commentaires

4
votes

0 commentaires

0
votes

Si vous vous référez à une API basée sur le Web, nous avons construit une API de repos que votre application Web peut utiliser pour déclencher des rappels / Webhooks avec. Découvrez Cronturnapi's Cron . Vous faites des demandes HTTP pour planifier, afficher et supprimer des travaux. Vous trouverez ci-dessous un exemple de planification d'un travail: xxx


0 commentaires