[gl-como] incron: fare cose quando succede qualcosa ad un file
Elena ``of Valhalla''
elena.valhalla@gmail.com
Gio 29 Dic 2011 11:57:16 CET
Ciao
Mi è appena capitato tra le mani un programmillo che pare essere
utile, anche se ancora non ho trovato motivo di usarlo:
incron_ è un demone che funziona in modo simile a cron, ma anziché
agire in base ad eventi temporali usa inotify per agire in base
ad eventi che avvengono a determinati file.
.. _incron: http://inotify.aiken.cz/?section=incron&page=about&lang=en
Come avviene per cron, si usa un comando apposta per manipolare la
tabella delle azioni, ``incrontab``, con funzionamento molto
simile a ``crontab``; la sintassi della tabella è abbastanza
semplice: su ogni riga ci sono file, flag e comando, separati da spazi;
ad esempio::
/home/valhalla/learning/incrontab/dont_touch IN_ATTRIB touch /home/valhalla/learning/incrontab/ouch
tocca il file ``ouch`` ogni volta che viene toccato il file
``dont_touch`` (nella directory specificata, ovviamente).
Come con cron, nel caso in cui si voglia avere maggior controllo
su quello che succede, ad esempio per impostare delle variabili
(o — per ora — per aver accesso all'output del programma),
è pratico scriversi uno scriptino e lanciare quello.
Ad esempio::
$ ls -l /home/valhalla/bin/complain.sh
-rwxr-xr-x 1 valhalla users 76 Dec 29 11:46 /home/valhalla/bin/complain.sh
$ cat /home/valhalla/bin/complain.sh
#!/bin/bash
export DISPLAY=:0
notify-send "Formal compliant" "Hands off!"
$ incrontab -l
/home/valhalla/learning/incrontab/dont_touch IN_MODIFY,IN_ATTRIB /home/valhalla/bin/complain.sh
fa apparire le proprie lamentele sullo schermo.
Ed ora che ho capito come funziona, devo solo trovare qualche caso
in cui sia utile :)
--
Elena ``of Valhalla''
Maggiori informazioni sulla lista
gl-como