En bref : le planificateur de tâches cron ne prend pas en charge la planification de tâches à exécuter à un intervalle de secondes. Dans cet article, nous allons vous montrer une astuce simple pour vous aider à exécuter une tâche cron toutes les 30 secondes ou x secondes sous Linux.
Êtes-vous nouveau dans le planificateur de tâches cron et souhaitez-vous exécuter une tâche toutes les 30 secondes ? Malheureusement, cron ne le permet pas. Vous ne pouvez pas programmer une tâche cron pour qu’elle s’exécute chaque X deuxième. Cron ne prend en charge qu’un intervalle de temps d’au moins 60 secondes (soit 1 minute). Pour exécuter une tâche cron toutes les 30 secondes, vous devez utiliser l’astuce que nous avons expliquée ci-dessous.
Dans ce guide, nous couvrirons également de nombreux autres exemples pour exécuter un travail ou une commande, ou un script toutes les x secondes. Mais commençons par expliquer comment exécuter une tâche cron toutes les 30 secondes sous Linux.
Exécutez le travail Cron toutes les 30 secondes sous Linux
Pour réaliser la tâche ci-dessus, créez deux entrées dans le crontab. Le premier travail exécutera la commande de date toutes les minutes (60 secondes), puis la deuxième entrée utilise la commande de sommeil de retarder pendant un laps de temps spécifié (30 secondes dans ce cas) et d’invoquer le Date commander à nouveau.
Vous devez ajouter les entrées suivantes dans le crontab (table cron), et ouvrez-le pour le modifier en utilisant ce qui suit crontab commande (le -e
drapeau permet l’édition) :
# crontab -e
Ajoutez les entrées cron suivantes au fichier.
* * * * * date>> /tmp/date.log * * * * * sleep 30; date>> /tmp/date.log
Maintenant, si vous vérifiez le contenu du /tmp/date.log fichier, vous devriez voir que le date commande est exécuté tous les 30 secondes. Nous pouvons utiliser la commande cat pour afficher le fichier et vérifier la colonne de temps pour confirmer, comme suit :
$ cat /tmp/date.log
Vous pouvez également regarder le fichier se mettre à jour en temps réel. Pour ce faire, utilisez la commande tail avec le -f
drapeau.
$ tail -f /tmp/date.log
Exécutez le travail Cron toutes les 10 secondes sous Linux
Regardons plus d’exemples. Celui-ci montre comment exécuter une tâche cron tous les dix secondes. L’astuce consiste simplement à jouer avec le dormir commande nombre de secondes :
* * * * * date>> /tmp/date.log * * * * * sleep 10; date>> /tmp/date.log * * * * * sleep 20; date>> /tmp/date.log * * * * * sleep 30; date>> /tmp/date.log * * * * * sleep 40; date>> /tmp/date.log * * * * * sleep 50; date>> /tmp/date.log
Encore une fois, si nous regardons le /tmp/date.log fichier, il doit être mis à jour tous les dix secondes sur la base des entrées crontab ci-dessus :
$ tail -f /tmp/date.log
Voici un autre exemple d’exécution de la date commande après chaque 15 secondes :
* * * * * date>> /tmp/date.log * * * * * sleep 15; date>> /tmp/date.log * * * * * sleep 30; date>> /tmp/date.log * * * * * sleep 45; date>> /tmp/date.log
Enfin, pour exécuter une tâche cron tous les 20 secondes, vous pouvez avoir quelque chose comme ceci :
* * * * * date>> /tmp/date.log * * * * * sleep 20; date>> /tmp/date.log * * * * * sleep 40; date>> /tmp/date.log
Voici également d’autres articles pour apprendre la planification des tâches à l’aide de cron :
Maintenant vous le savez ! Nous vous avons montré différents exemples pour exécuter une tâche cron chaque X deuxième sous Linux. Lisez les pages de manuel cron (en exécutant man cron
et man crontab
commandes) pour plus d’informations.
Si vous connaissez des conseils ou astuces utiles sur les commandes cron, veuillez les partager dans les commentaires ci-dessous.
Si vous appréciez ce que nous faisons ici sur TecMint, vous devriez considérer :
TecMint est le site communautaire à la croissance la plus rapide et le plus fiable pour tout type d’articles, de guides et de livres Linux sur le Web. Des millions de personnes visitent TecMint ! pour rechercher ou parcourir les milliers d’articles publiés accessibles GRATUITEMENT à tous.
Si vous aimez ce que vous lisez, pensez à nous acheter un café (ou 2) en signe d’appréciation.
Nous sommes reconnaissants pour votre soutien sans fin.