0Pricing
DevOps Bootcamp · Leçon

Planification des tâches avec Cron

Maîtrisez l’utilitaire « cron » pour planifier l’exécution automatique de scripts et de commandes à des intervalles ou horaires définis.

Planification des tâches avec Cron est une leçon DevOps Bootcamp gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage DevOps Bootcamp, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours DevOps Bootcamp comprend 4 leçons au total.

Automatiser des tâches avec Cron

Bienvenue dans le monde de l'automatisation ! Dans cette leçon, vous découvrirez cron, un puissant utilitaire Linux qui vous permet de planifier l'exécution automatique de commandes ou de scripts à des moments précis.

Imaginez pouvoir configurer des sauvegardes quotidiennes ou des vérifications horaires du système sans lever le petit doigt : c'est précisément le rôle de cron !

Votre fichier crontab personnel

Chaque utilisateur d'un système Linux possède son propre fichier crontab (table cron). C'est là que vous enregistrez toutes vos tâches planifiées.

Pour modifier votre crontab personnel, vous utiliserez la commande crontab -e. Elle ouvre le fichier dans votre éditeur de texte par défaut, prêt à accueillir de nouvelles tâches.

Entrée crontab : champs horaires

Une entrée crontab se compose de six parties. Les cinq premières définissent quand votre commande sera exécutée et sont séparées par des espaces :

  • Minute : 0-59
  • Heure : 0-23 (0 correspond à minuit)
  • Jour du mois : 1-31
  • Mois : 1-12 (ou Jan-Dec)
  • Jour de la semaine : 0-7 (0 ou 7 correspond au dimanche, 1 au lundi)

Entrée crontab : la commande

La sixième et dernière partie d'une entrée crontab est la commande ou le script que vous souhaitez exécuter.

Il est essentiel d'utiliser ici des chemins absolus pour les commandes et les scripts (par exemple, /usr/bin/python plutôt que simplement python). Les tâches cron s'exécutent dans un environnement minimal : votre PATH habituel peut donc ne pas être disponible.

Caractères spéciaux de crontab

Pour rendre vos planifications flexibles, cron utilise des caractères spéciaux :

  • * (astérisque) : correspond à toutes les valeurs possibles (par exemple, chaque minute ou chaque heure).
  • , (virgule) : sépare une liste de valeurs (par exemple, 1,15 pour les minutes 1 et 15).
  • - (tiret) : définit une plage de valeurs (par exemple, 9-17 pour les heures de 9 à 17).
  • / (barre oblique) : indique un intervalle (par exemple, */10 pour toutes les 10 minutes).

Raccourcis de planification prédéfinis

Pour les besoins de planification courants, cron propose des raccourcis pratiques qui remplacent les cinq premiers champs horaires :

  • @reboot : s'exécute une fois après le redémarrage du système.
  • @yearly (ou @annually) : s'exécute une fois par an (0 0 1 1 *).
  • @monthly : s'exécute une fois par mois (0 0 1 * *).
  • @weekly : s'exécute une fois par semaine (0 0 * * 0).
  • @daily (ou @midnight) : s'exécute une fois par jour (0 0 * * *).
  • @hourly : s'exécute une fois par heure (0 * * * *).

Mise en pratique : planifier un script simple

Créons un script simple qui journalise un message d'accueil, puis planifions son exécution tous les jours à 10 h 00 AM.

  1. Créer le script (par exemple, ~/greet.sh) :
  2. Le rendre exécutable : chmod +x ~/greet.sh
  3. L'ajouter à la crontab (crontab -e) :
    0 10 * * * /home/user/greet.sh
    Cette entrée signifie : à la minute 0, à 10 heures (10 h AM), tous les jours du mois, tous les mois et tous les jours de la semaine, exécuter /home/user/greet.sh.
#!/bin/bash
# This script logs a greeting to a temporary file.
echo "Hello from Cron! The time is $(date)" >> /tmp/cron_greeting.log

Gérer vos tâches cron

Une fois vos tâches cron ajoutées, vous devrez les gérer :

  • Pour afficher la liste de vos entrées crontab actuelles : crontab -l
  • Pour supprimer toutes vos entrées crontab (à utiliser avec une extrême prudence, car cette action est irréversible) : crontab -r

Après toute modification, vérifiez toujours votre crontab avec crontab -l afin de vous assurer que vos entrées sont correctes.

Variables d'environnement de Cron

N'oubliez pas que les tâches cron s'exécutent dans un environnement minimal. Elles ne disposent donc souvent pas des mêmes variables d'environnement (comme PATH) que votre interpréteur de commandes interactif.

Si votre script dépend de commandes spécifiques, utilisez leurs chemins absolus ou définissez directement les variables d'environnement nécessaires au début de votre fichier crontab, par exemple : PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin.

Défi : syntaxe de crontab

Vous devez planifier l'exécution d'un script nommé /home/user/daily_report.sh à 9 h 15 AM chaque jour ouvré (du lundi au vendredi). Quelle entrée crontab est correcte ?

Récapitulatif : maîtriser la planification avec Cron

Excellent travail ! Vous maîtrisez maintenant les principes fondamentaux de cron pour planifier des tâches.

  • Vous avez découvert le fichier crontab et appris à le modifier avec crontab -e.
  • Vous comprenez les six champs d'une entrée cron, notamment les champs horaires et la commande.
  • Vous avez exploré les caractères spéciaux et les raccourcis prédéfinis pour créer des planifications flexibles.
  • Vous savez gérer vos tâches avec crontab -l et crontab -r.
  • Vous avez également appris l'importance des chemins absolus et des variables d'environnement dans le contexte de cron.

À vous maintenant d'automatiser !

Questions Fréquemment Posées

La leçon « Planification des tâches avec Cron » est-elle gratuite ?

Oui — le texte complet de « Planification des tâches avec Cron » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours DevOps Bootcamp, passe à CoddyKit PRO. Le cours DevOps Bootcamp comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Planification des tâches avec Cron » ?

Maîtrisez l’utilitaire « cron » pour planifier l’exécution automatique de scripts et de commandes à des intervalles ou horaires définis. Tu pratiques DevOps Bootcamp avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer DevOps Bootcamp ?

Aucune expérience préalable n'est requise. DevOps Bootcamp sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Planification des tâches avec Cron » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon DevOps Bootcamp ?

Oui. Chaque leçon DevOps Bootcamp inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Planification des tâches avec Cron
  2. Automatisation de l’administration système
  3. Projet de script avancé
  4. Rotation et nettoyage automatisés des journaux
← Retour à DevOps Bootcamp