⌚ Cos'è cron e cosa sono i cron job: guida pratica con esempi ed esercitazioni online

  

Quando si lavora nel mondo dei sistemi Linux o nella gestione di server web, prima o poi si incontra un alleato potente e silenzioso: cron

In questo articolo partiremo dalle basi per spiegare cos'è, a cosa serve e come si usano i cosiddetti cron job. Alla fine, vedremo anche uno strumento online gratuito che permette di creare cron job senza dover usare il terminale: cron-job.org.

🔗 Ti piace Techelopment? Dai un'occhiata al sito per tutti i dettagli!

Cos'è cron?

cron è un demone di sistema (ovvero un processo in background) presente nella maggior parte delle distribuzioni Linux/Unix. Il suo compito è molto semplice: eseguire comandi o script a orari prestabiliti.

Il nome "cron" deriva dal greco chronos, che significa tempo. Infatti, la sua funzione principale è proprio quella di gestire operazioni pianificate nel tempo.


Cosa sono i cron job?

Un cron job è una singola attività pianificata che viene eseguita da cron in base a una programmazione specifica. Questo può includere:

  • Backup automatici giornalieri
  • Invio di email periodiche
  • Pulizia di file temporanei ogni ora
  • Monitoraggio dello stato di un server ogni 5 minuti

Come funziona la sintassi di cron

I cron job vengono generalmente scritti nel file crontab, accessibile tramite il comando:

crontab -e

Ogni riga rappresenta un job e segue questa sintassi:

* * * * * comando_da_eseguire
│ │ │ │ │
│ │ │ │ └── Giorno della settimana (0 - 7) (Domenica = 0 o 7)
│ │ │ └──── Mese (1 - 12)
│ │ └────── Giorno del mese (1 - 31)
│ └──────── Ora (0 - 23)
└────────── Minuto (0 - 59)

Esempio: eseguire check_site.sh ogni ora

0 * * * * /path/assoluto/check_site.sh
Significato:
  • 0 → al minuto zero
  • * → ogni ora
  • * → ogni giorno del mese
  • * → ogni mese
  • * → ogni giorno della settimana

Esempi pratici:

Obiettivo Sintassi cron Spiegazione
Eseguire ogni minuto * * * * * Tutti i minuti, ogni ora, giorno e mese
Ogni giorno alle 3:00 0 3 * * * Allo scoccare delle 3:00 di ogni giorno
Ogni lunedì alle 8:30 30 8 * * 1 Alle 8:30 ogni lunedì
Ogni 5 minuti */5 * * * * Ogni 5 minuti, tutti i giorni

Come testare cron job senza terminale: cron-job.org

Se non hai un server Linux a disposizione o vuoi semplicemente provare i cron job online, esiste un servizio molto utile: https://cron-job.org

Cos'è cron-job.org?

Si tratta di un servizio gratuito (con registrazione) che ti permette di eseguire richieste HTTP a intervalli regolari, proprio come faresti con un cron job su Linux. È perfetto per:

  • Monitorare uptime di siti web
  • Attivare script web periodici (PHP, Node.js, etc.)
  • Simulare task pianificati su progetti online

Esempio: monitorare se il nostro sito è attivo

Supponiamo di voler controllare ogni 10 minuti se il nostro sito è online. Ecco come configurare questo cron job con cron-job.org.

Passaggi:

  1. Registrati gratuitamente su https://cron-job.org
  2. Accedi al tuo pannello di controllo
  3. Clicca su "Create Cronjob"
  4. Compila il modulo:
    • URL: https://www.miosito.it
    • Schedule: ogni 10 minuti (Every 10 minutes)
    • Request method: GET
    • Notify on failure: ✅ (così ricevi una notifica se il sito non risponde)
  5. Salva

Da ora in poi, cron-job.org invierà una richiesta al tuo sito ogni 10 minuti. Se il sito restituisce un errore (es. 500, 404 o non risponde), riceverai un'email di avviso.


Conclusione

I cron job sono strumenti essenziali per l'automazione di operazioni periodiche, e cron è uno dei servizi più potenti e longevi nel mondo Unix/Linux. Che tu stia gestendo un sito web, un server o semplicemente uno script da eseguire ogni giorno, imparare a usare cron ti semplificherà la vita.

E se non hai un server a disposizione? Nessun problema: strumenti come cron-job.org ti permettono di testare e usare cron job reali con pochi clic.



Follow me #techelopment

Official site: www.techelopment.it
facebook: Techelopment
instagram: @techelopment
X: techelopment
Bluesky: @techelopment
telegram: @techelopment_channel
whatsapp: Techelopment
youtube: @techelopment