Jan
Operazione pianificate su Linux - at
Posted by muse as Linux
Il comando at, a differenza di cron, serve ad eseguire un’operazione un’unica volta, nel giorno e all’orario stabilito.
Sintassi del comando at
Digitando il comando at seguito dall’orario o dalla data ci si trova di fronte ad un prompt a cui passare i comandi che si vogliono eseguire :
muse@workstation:$ at 18:30
warning: commands will be executed using /bin/sh
at> echo “inizia registrazione radio deejay”at> vlc mms://live.mediaserver.kataweb.it/radiodeejay –sout file/asf:cordialmente.asf -d
at> <EOT>
job 1 at Fri Jan 11 20:30:00 2008
Una volta inseriti i comandi da eseguire, si può uscire premendo ctrl+d, ottenendo come risposta <EOT> e una riga contenente i dettagli sul job appena configurato. La lista dei job impostati può essere visualizzata digitando atq:
muse@workstation:$ atq
1 Fri Jan 11 22:30:00 2008 a muse
2 Fri Jan 11 23:30:00 2008 a muse
Si può poi decidere di rimuovere il job tramite atrm seguito dal numero corrispondente. Ovviamente i risultati di questi cmandi si riferiscono ai job (o tasks) relativi all’utente con il quale si è loggati.
L’orario può essere specificato in formato 24h o am-pm, in quest’ultimo caso va specificato (at 4:00 pm). La data può essere espressa in formato MM/DD/YYYY oppure YYYY-MM-DD . E’ possibile inoltre indicare il nome del mese (jan, feb, ecc..) e il giorno tramite il numero (1,2..31) e non indicare l’anno. I seguenti comandi sono equivalenti
at 11/21/2008
at 2008-11-21
at nov 21
E’ possibile utilizzare l’operatore + per indicare un orario relativo secondo lo schema
+ <numero> <unitĂ di tempo>
dove l’unitĂ di tempo può essere minutes, hours, days o weeks. Alcuni esempi possono essere
at 22:30 + 2 days - il comando sarĂ eseguito fra due giorni alle 22 e 30
at 8 pm +2 hours - il comando viene eseguito alle 10 pm ( si, è stupido ma è un e
sempio)
La sintassi di at comprende anche dei parametri “informali” con i quali è possibile configurare un job in modo amichevole (^^ che bellu), ad esempio :
muse@workstation:$ at teatime
> echo “è l’ora del thè”
at> <EOT>
Questo stamperĂ a schermo “è l’ora del thè” alle 4 del pomeriggio.. i parametri di questo tipo sono:
teatime - corrisponde alle 16 (però!.. intelligente eh?)
now - esegue il comando immediatamente
noon - corrisponde alle 12 am
midnight - corrisponde alle 24 o 12 pm
today, tomorrow - ovviamente oggi e domani
Alcuni usi tipici di questi parametri possono essere:
at now + 3 hours - esegue il comando fra 3 ore
at noon tomorrow - esegue il comando domani alle 12
Opzioni di at.
Le opzioni consentite da at sono
-l : stessa funzione di atq, visualizza la lista dei job
-r <num> : stessa funzione di atrm, rimuove il job <num> (vedi sopra)
-m: consente di inviare una mail all’utente per notificarlo sull’esecuzione del comando e sull’output eventualmente prodotto
-f: consente di indicare un file contenente i comandi da eseguire.
Nel caso venga indicato un file da eseguire, il prompt dei comandi di at non verrĂ visualizzato:
muse@workstation:~$ at 22:30 -f radiodeejay.sh
warning: commands will be executed using /bin/sh
job 2 at Sun Jan 13 22:30:00 2008
Casi particolari
Se si avvia at indicando un orario già passato, il comando verrà eseguito immediatamente. Stessa cosa accade se il sistema è spento nel momento in cui avrebbe dovuto eseguire un job di at, al riavvio verrà eseguito immediatamente.
Autorizzazioni
Il sistema di autorizzazioni per l’esecuzione dei job per gli utenti del sistema è simile a quello di Cron, sono presenti infatti due file at.deny e at.allow con la liste degli utenti abilitati oppure no.
Tags
bttv cctv conexant Cron Dvr elevator IPv4 IPv6 Linux music Ripe55 Routers Scheduling Song Song title Streaming Vlc waiting room
Categories
Blogroll
Friends