Est-il possible d'utiliser PHP pour créer, modifier et supprimer des tâches crontab ?
Je sais comment dresser la liste des tâches crontab actuelles de l'utilisateur Apache :
$output = shell_exec('crontab -l');
echo $output;
Mais comment ajouter une tâche cron avec PHP ? La commande 'crontab -e' ouvre simplement un éditeur de texte et vous devez modifier manuellement les entrées avant de sauvegarder le fichier.
Et comment supprimer une tâche cron avec PHP ? Encore une fois, vous devez le faire manuellement avec 'crontab -e'.
Avec une chaîne de travail comme celle-ci :
$job = '0 */2 * * * /usr/bin/php5 /home/user1/work.php';
Comment l'ajouter à la liste des tâches de la crontab avec PHP ?
2 votes
Duplication possible de Tâches cron avec php et un quelques autres
14 votes
(indice) la crontab est juste un fichier
1 votes
@Gordon, merci. Je sais que tout est un fichier, mais stockent-ils les tâches crontab au même endroit dans les différentes distributions ? De plus, il faudrait qu'il obtienne l'utilisateur d'Apache, tel que www-data, et qu'il ait les privilèges de Root ?
1 votes
Je ne suis pas sûr que le chemin d'accès change selon les distributions, mais vous faites bien de faire du chemin d'accès une valeur configurable dans votre code et de le définir au moment de l'exécution. En ce qui concerne l'utilisateur et les autorisations : chaque utilisateur peut avoir un crontab qui exécute les tâches avec les droits attribués à cet utilisateur, donc c'est individuel pour votre configuration système.
0 votes
Voir aussi stackoverflow.com/q/3186471/632951
0 votes
Essayez yzalis/crontab