Открыть в генераторе cron-выражений →
Что означает 0 0 1 1,7 *
Cron читает пять полей слева направо: минута, час, день месяца, месяц и день недели. Для каждых 6 месяцев они такие:
| Поле | Значение | Смысл | Допустимо |
|---|---|---|---|
| Минута | 0 | 0 | 0–59 |
| Час | 0 | 00:00 | 0–23 |
| День месяца | 1 | 1 | 1–31 |
| Месяц | 1,7 | января, июля | 1–12 |
| День недели | * | каждый день недели | 0–6 (вс–сб) |
Следующие запуски
Вычисляется в браузере для вашего часового пояса. На сервере cron использует часовой пояс сервера (часто UTC).
- Включите JavaScript, чтобы увидеть время следующих запусков.
Типичные случаи использования
- Полугодовые аудиты
- Ротация ключей
Полезно знать
Полночь 1 января и 1 июля.
Использование в crontab, GitHub Actions, Kubernetes и Node.js
crontab (crontab -e):
0 0 1 1,7 * /usr/local/bin/my-job.sh >> /var/log/my-job.log 2>&1
GitHub Actions (время в UTC):
on:
schedule:
- cron: '0 0 1 1,7 *'
Kubernetes CronJob:
apiVersion: batch/v1
kind: CronJob
metadata:
name: my-job
spec:
schedule: "0 0 1 1,7 *"
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 1,7 *', () => {
// your job
});
Похожие расписания
- Каждый месяц —
0 0 1 * * - 15-го числа каждого месяца —
0 0 15 * * - 1-го и 15-го числа —
0 0 1,15 * * - Каждый квартал —
0 0 1 1,4,7,10 * - Каждый год —
0 0 1 1 * - Последний день месяца —
0 0 28-31 * * - Первый понедельник месяца —
0 9 1-7 * *
Создайте собственное расписание
Превратите любое расписание в cron-выражение или любое выражение в понятное описание — с указанием времени следующих запусков.
Часто задаваемые вопросы
Какое cron-выражение для каждых 6 месяцев?
0 0 1 1,7 *. Запускается в 0; 00:00; 1; января, июля.Какой часовой пояс использует cron?
spec.timeZone (например, Europe/Berlin).