Domande
Come verifico cosa significa un’espressione cron?
Incollala nello strumento di spiegazione cron; stampa la pianificazione in parole semplici e le prossime dieci esecuzioni nel tuo fuso orario.
L’ordine dei campi, le pianificazioni che servono davvero e le tre trappole che spiegano la maggior parte dei ticket «il mio job cron non gira».
┌─ minuto (0–59) │ ┌─ ora (0–23) │ │ ┌─ giorno del mese (1–31) │ │ │ ┌─ mese (1–12, jan–dec) │ │ │ │ ┌─ giorno della settimana (0–7, sun–sat; 0 e 7 = domenica) * * * * * comando
| * | ogni valore |
| 5 | esattamente 5 |
| 1-5 | intervallo |
| */15 | ogni 15 |
| 1,15 | lista |
| 8-18/2 | passo dentro un intervallo |
| @reboot | una volta all’avvio |
| @hourly | 0 * * * * |
| @daily / @midnight | 0 0 * * * |
| @weekly | 0 0 * * 0 |
| @monthly | 0 0 1 * * |
| @yearly / @annually | 0 0 1 1 * |
| * * * * * | ogni minuto |
| */5 * * * * | ogni 5 minuti |
| */15 9-17 * * 1-5 | ogni 15 min, orario di lavoro, giorni feriali |
| 0 * * * * | ogni ora, allo scoccare |
| 30 * * * * | ogni ora e 30 |
| 0 */6 * * * | ogni 6 ore (0, 6, 12, 18) |
| 0 0 * * * | ogni giorno a mezzanotte |
| 0 3 * * * | ogni giorno alle 03:00 |
| 30 6 * * 1-5 | giorni feriali alle 06:30 |
| 0 9,17 * * 1-5 | giorni feriali alle 09:00 e alle 17:00 |
| 0 0 * * 0 | domenica a mezzanotte |
| 0 0 * * 6,0 | fine settimana |
| 0 0 1 * * | primo del mese |
| 0 0 1,15 * * | il 1º e il 15 |
| 0 0 1 */3 * | trimestrale (1º gen, apr, lug, ott) |
| 0 0 1 1 * | annuale |
| 0 0 * * 1#1 | primo lunedì (non standard; usa 0 0 1-7 * 1) |
| 0 0 1-7 * 1 | primo lunedì — attenzione: scatta nei giorni 1–7 OPPURE ogni lunedì; aggiungi il test [ $(date +\%u) = 1 ] |
| 0 0 28-31 * * [ $(date -d tomorrow +\%d) = 01 ] && cmd | ultimo giorno del mese |
| 0 2 * * * sleep $((RANDOM \% 1800)); cmd | 02:00 con fino a 30 min di jitter |
/usr/bin:/bin). Usa percorsi assoluti o imposta PATH=… in cima al crontab.\% (date +\%F).CRON_TZ=Europe/Rome funziona in cronie.MAILTO=.flock -n /tmp/job.lock cmd.| crontab -e | modifica il tuo crontab |
| crontab -l | elenca |
| crontab -r | rimuove tutto (senza conferma!) |
| crontab -u www-data -l | di un altro utente (root) |
| /etc/crontab, /etc/cron.d/* | crontab di sistema: hanno un campo utente dopo la pianificazione |
| /etc/cron.{hourly,daily,weekly,monthly}/ | script drop-in, eseguiti da anacron sui desktop |
| grep CRON /var/log/syslog; journalctl -u cron | vedi cosa è girato |
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin [email protected] SHELL=/bin/bash # m h dom mon dow comando 30 6 * * 1-5 flock -n /run/backup.lock /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1
I risultati e i messaggi di questo strumento sono mostrati in inglese.
Incollala nello strumento di spiegazione cron; stampa la pianificazione in parole semplici e le prossime dieci esecuzioni nel tuo fuso orario.