Crontab


Il file di cron è presente in /etc/crontab, ma ogni utente può creare il proprio con il comando:
crontab -e
Segue la spiegazione dei singoli parametri:
MINUTI    ORE    GIORNO MESE   GIORNO SETT      SCRIPT
0-59          0-23    1-31           1-12       0-7                         /<path>/script
  
Il carattere jolly *  può essere usato in ogni singolo parametro per prendere tutti i valori.
Giorni della settimana: 0 = domenica, 1= lunedì.Se si usa una virgola si indicano i giorni in cui eseguire il comando.
Minuti:    */5 il comando viene eseguito ogni 5 minuti.
Ore:          10-17 il comando viene eseguito dalle 10 alle 17.
Ore:          10,17 il comando viene eseguito dalle 10 e alle 17.

Per vedere quali crontab sono in esecuzione sul sistema è sufficiente digitare il seguente comando:
crontab -l
In assenza di file di cron validi il risultato sarà simile al seguente:
no crontab for nomeutente

Una volta chiuso l'editor, il nuovo file di crontab verrà salvato in /var/spool/cron/.

Crontab per comandi root:
Se si desidera pianificare un'azione che richiede i privilegi di amministrazione è possibile creare un file di crontab per l'utente root con il seguente comando:
sudo crontab -e

Esempio: spegnimento del computer:
47 17 * * * /sbin/shutdown -h now

Backup contab
Ad esempio, in presenza di un crontab oracle e root.
cd /var/spool/cron/
[root@lab06 cron]# ls -lrt
-rw-------  1 root root     80 Dec 13 17:55 root
-rw-------  1 root oinstall 72 Dec 13 19:06 oracle

Creare una copia
cp oracle oracle_20191217
cp root root_20191217

[root@lab06 cron]# ls -lrt
-rw-------  1 root root     80 Dec 13 17:55 root
-rw-------  1 root oinstall 72 Dec 13 19:06 oracle
-rw-------  1 root root     80 Dec 17 08:53 root_20191217
-rw-------  1 root root     72 Dec 17 08:53 oracle_20191217
-rw-------  1 root root     80 Dec 17 08:53 root_20191217
-rw-------  1 root root     72 Dec 17 08:53 oracle_20191217

Standard output ed error 
Per non visualizzare lo standard output ed error  (a video) dello script aggiungere i seguenti comandi:
[root@lab06 cron]# crontab -l

30 12 * * 1-6 /u01/app/oracle/work/lancio_query_email.sh  1>/dev/null 2>&1



Post popolari in questo blog

ORA-12154: TNS: il listener non è attualmente a conoscenza del servizio richiesto nel descrittore di connessione

Create e Drop Pluggable Database