Commandes Linux: crontab

Un guide rapide de lacrontabcommande, utilisée pour planifier des tâches cron

Les tâches Cron sont des tâches planifiées pour s'exécuter à des intervalles spécifiques. Vous pouvez demander à une commande d'exécuter quelque chose toutes les heures, tous les jours ou toutes les 2 semaines. Ou le week-end. Ils sont très puissants, notamment sur les serveurs pour effectuer la maintenance et les automatisations.

Lecrontabcommand est le point d'entrée pour travailler avec les tâches cron.

La première chose que vous pouvez faire est d'explorer les tâches cron que vous définissez:

crontab -l

Vous n'en avez peut-être pas, comme moi:

Courir

crontab -e

pour modifier les tâches cron et en ajouter de nouvelles.

Par défaut, cela s'ouvre avec l'éditeur par défaut, qui est généralementvim. j'apprécienanode plus, vous pouvez utiliser cette ligne pour utiliser un éditeur différent:

EDITOR=nano crontab -e

Vous pouvez maintenant ajouter une ligne pour chaque tâche cron.

La syntaxe pour définir les tâches cron est assez effrayante. C'est pourquoi j'utilise généralement un site Web pour m'aider à le générer sans erreur:https://crontab-generator.org/

Vous choisissez un intervalle de temps pour le travail cron et vous tapez la commande à exécuter.

J'ai choisi d'exécuter un script situé dans/Users/flavio/test.shtoutes les 12 heures. Voici la ligne crontab dont j'ai besoin pour exécuter:

* */12 * * * /Users/flavio/test.sh >/dev/null 2>&1

je courscrontab -e:

EDITOR=nano crontab -e

et j'ajoute cette ligne, puis j'appuie surctrl-Xet appuyez surysauver.

Si tout se passe bien, la tâche cron est configurée:

Une fois que cela est fait, vous pouvez voir la liste des tâches cron actives en exécutant:

crontab -l

Vous pouvez supprimer une tâche cron en cours d'exécutioncrontab -eencore une fois, en supprimant la ligne et en quittant l'éditeur:

LecrontabLa commande fonctionne sur Linux, macOS, WSL et partout où vous avez un environnement UNIX

Téléchargez mon gratuitManuel des commandes Linux


Plus de tutoriels cli: