Condividi su Facebook
Realizzare uno schermo intermittente
Scritto da: gisto85 il 25/09/2009 alle 10:52
Tag: Linux, Bash.Visto 452 volte.

... ovvero eseguire un comando con cron ogni X minuti e spegnere/accendere completamente lo schermo da shell.

Di seguito la sintassi generale di un cron:

Code:

# .---------------- minuto (0 - 59)
# | .------------- ora (0 - 23)
# | | .---------- giorno del mese (1 - 31)
# | | | .------- mese (1 - 12) OPPURE jan,feb,mar,apr ...
# | | | | .---- giorno della settimana (0 - 6) (Sunday=0 o 7) OPPURE sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * utente comando da esguire

Esempio: editiamo la crontab per il nostro utente affinché alle 23.30 di ogni giorno creiamo il file della "buona notte"

Code:
crontab -e
# premiamo I per inserire inseriamo poi esc : wq
30 23 * * * user touch /tmp/buona-notte-da-$USER


Linux cron

Vediamo ora come eseguire un cron ogni X(qui 2) minuti, la sintassi è simile alla precedente con l'aggiunta di /X nel posto dei minuti

Code:
*/2 * * * * user echo ""

A questo punto siamo a metà del nostro obbiettivo nel creare lo schermointermittente
Passiamo a capire quale comandi serve per fare accendere e spegnero lo schermo: poiché vogliamo che lo schermo si spenga completamente dobbiamo intervenire sul bios della scheda video, per fare questo si può utilizzare vbetool, i comandi di seguito spengono e accendono lo schermo

Code:
vbetool dpms off
vbetool dpms on

Una soluzione per fare accendere e spegnere lo schermo in modo automatico è creare un semplice script bash con contenuti i comandi che
servono separati da uno sleep

Code:
vim /root/onofdisp.sh

# !/bin/bash
vbetool dpms off
sleep 10
vbetool dpms on
exit 0

salviamo e rendiamo il file eseguibile
chmod +x /root/onofdisp.sh


E' conveniente editare direttamente la crontab di sistema affinché il tutto funzioni, per farlo è sufficiente aggiungere questa riga al file crontab in /etc
quindi

Code:
vim /etc/crontab
*/2 * * * * root /root/onofdisp.sh
salviamo e usciamo

Due minuti dopo da quando la crontab verrà riletta (quest'ultima operazione avviene ogni minuto) avremo lo schermo che ogni 2 minuti si spegne per 10 secondi e poi si riaccende...passano 2 minuti...lo schermo si spegne per 10 secondi e poi si riaccende... intermittente appunto.
Conclusioni: avere lo schermo intermittente serve a poco è molto più utile conoscere come eseguire un cron ogni X tempo e come passare istruzioni al video-bios, entrambi i concetti sono esemplificati in questo post. Per approfondimenti:

Code:
man cron
man crontab
man vbetool


Articoli correlati
Tool utile per la manipolazione di file PDF
Bash scripting e ImageMagik
Software per il monitoring del consumo elettrico e della temperatura



Aggiungi un commento:
Nick:
captchaInserire il codice: