Expression cron : le dernier jour du mois

0 0 28-31 * * s'exécute le dernier jour du mois. Voici la signification de chaque champ, la prochaine exécution et l'utilisation dans crontab, GitHub Actions, Kubernetes et Node.js.

Mis à jour le

0 0 28-31 * *
Expression cron
Le dernier jour du mois
Planification

Ouvrir dans le générateur d'expressions cron →

Ce que signifie 0 0 28-31 * *

Cron lit cinq champs de gauche à droite : minute, heure, jour du mois, mois et jour de la semaine. Pour le dernier jour du mois, ils valent :

ChampValeurSignificationValeurs admises
Minute000–59
Heure000:000–23
Jour du mois28-3128 à 311–31
Mois*chaque mois1–12
Jour de la semaine*chaque jour de la semaine0–6 (dim–sam)

Prochaines exécutions

Calculé dans votre navigateur pour votre fuseau horaire. Sur un serveur, cron utilise le fuseau horaire du serveur (souvent UTC).

  1. Activez JavaScript pour voir les prochaines heures d'exécution.

Usages courants

  • Clôture de fin de mois
  • Rapports mensuels finaux

Bon à savoir

Le cron standard n'a pas de valeur « dernier jour ». Exécutez les jours 28 à 31 et laissez la commande s'arrêter sauf si demain est le 1er : [ "$(date -d tomorrow +\%d)" = 01 ] && /job.sh. Quartz et certains planificateurs prennent L directement.

Utilisation dans crontab, GitHub Actions, Kubernetes et Node.js

crontab (crontab -e) :

0 0 28-31 * * /usr/local/bin/my-job.sh >> /var/log/my-job.log 2>&1

GitHub Actions (heures en UTC) :

on:
  schedule:
    - cron: '0 0 28-31 * *'

Kubernetes CronJob :

apiVersion: batch/v1
kind: CronJob
metadata:
  name: my-job
spec:
  schedule: "0 0 28-31 * *"
  concurrencyPolicy: Forbid
  jobTemplate:
    spec:
      template:
        spec:
          restartPolicy: OnFailure
          containers:
            - name: my-job
              image: alpine:3
              command: ["sh", "-c", "echo running"]

Node.js (node-cron) :

import cron from 'node-cron';
cron.schedule('0 0 28-31 * *', () => {
  // your job
});

Planifications associées

Questions fréquentes

Quelle est l'expression cron du dernier jour du mois ?
0 0 28-31 * *. Elle s'exécute à la minute 0 ; à 00:00 ; les jours 28 à 31.
Quel fuseau horaire utilise cron ?
Le cron classique utilise le fuseau horaire local du serveur, et beaucoup de serveurs fonctionnent en UTC. GitHub Actions utilise toujours UTC. Les CronJobs Kubernetes utilisent le fuseau horaire du contrôleur, sauf si vous définissez spec.timeZone (par exemple Europe/Berlin).
Comment tester une expression cron ?
Collez-la dans le générateur d'expressions cron pour la voir en langage clair avec les prochaines exécutions, puis vérifiez le journal de votre tâche après la première exécution planifiée.