Il comando crontab permette di eseguire periodicamente dei comandi o degli script nel nostro O.S. aggiungendoli alla lista dei lavori schedulati.
Questi lavori schedulati vengono eseguiti in background e quindi non ne vediamo traccia durante la loro esecuzione chiamata dal cron.

Anche se è usato principalmente nella gestione di sistemi informatici avanzati (ad esempio nei web server) può risultare utile anche nella vita quotidiana [nel prossimo post ne vedrete un esempio ;) ].
Schedulare un comando è relativamente facile, infatti basta creare un file di txt che conterrà la riga che schedulerà il nostro comando.
Questa riga conterrà 6 campi separati da uno spazio che rappresentano:

  1. minuti, da 00 a 59

  2. ore, da 00 a 23

  3. giorno del mese, da 01 a 31

  4. mese dell’anno, da 01 a 12

  5. giorno della settimana, da 00 a 06 in cui 00 rappresenta la domenica

  6. il comando da eseguire

Il carattere *, asterisco, è una possibile alternativa ai valori per i primi 5 campi, infatti inserto al loro posto farà in modo che il campo accetti tutti i suoi possibili valori.
Per capirci meglio, se vogliamo schedulare lo script contenutoHome.sh, che scrive in un file il contenuto della /home/, ogni ora di tutti i giorni dell’anno, dobbiamo creare il file txt , ad esempio /homer/user/sked.txt, e al suo interno inseriamo la riga:

00 * * * * sh /home/user/contenutoHome.sh

Dopo aver definito il file txt dobbiamo aggiungerlo alla lista dei lavori schedulati con il comando crontab, quindi per il nostro esempio:

crontab /home/user/sked.txt

e il gioco è fatto. Naturalmente ogni volta che modifichiamo il file txt, sked.txt nell’esempio sopra, dovremmo `rischedularlo`.

Per ulteriori informazioni e approfondimenti: