Expression cron : tous les mois

0 0 1 * * s’exécute tous les mois. Voici la signification de chaque champ, la prochaine exécution et comment l’utiliser dans crontab, GitHub Actions, Kubernetes et Node.js.

Mis à jour le

0 0 1 * *
Expression cron
Tous les mois
Planification

Ouvrir dans le générateur d’expression cron →

Ce que signifie 0 0 1 * *

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

ChampValeurSignificationValeurs autorisées
Minute000–59
Heure000:000–23
Jour du mois111–31
Mois*tous les mois1–12
Jour de la semaine*chaque jour de la semaine0–6 (dim.–sam.)

Prochaines exécutions

Calculées 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 exécutions.

Utilisations courantes

  • Factures mensuelles
  • Archivage des anciennes données
  • Rapports mensuels

Bon à savoir

Minuit le 1er de chaque mois — comme @monthly.

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

crontab (crontab -e) :

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

GitHub Actions (les heures sont en UTC) :

on:
  schedule:
    - cron: '0 0 1 * *'

Kubernetes CronJob :

apiVersion: batch/v1
kind: CronJob
metadata:
  name: my-job
spec:
  schedule: "0 0 1 * *"
  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 1 * *', () => {
  // your job
});

Planifications associées

Questions fréquentes

Quelle est l’expression cron pour tous les mois ?
0 0 1 * *. Elle s’exécute à la minute 0, à 00:00, le jour 1 du mois.
Quel fuseau horaire cron utilise-t-il ?
Le cron classique utilise le fuseau horaire local du serveur, et de nombreux 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’expression 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.