J'ai également découvert que vous pouvez utiliser awk pour surveiller le modèle et effectuer certaines actions lorsque le modèle est trouvé :
tail -fn0 logfile | awk '/pattern/ { print | "command" }'
Cela exécutera la commande lorsque le modèle sera trouvé dans le journal. La commande peut être n'importe quelle commande unix, y compris les scripts shell ou toute autre chose.
tail -fn0 logfile | \
while read line ; do
echo "$line" | grep "pattern"
if [ $? = 0 ]
then
... do something ...
fi
done
Une approche encore plus robuste est monit. Cet outil peut surveiller de très nombreuses choses, mais l'une d'entre elles est qu'il suit facilement un ou plusieurs journaux, correspond à une regex, puis déclenche un script. Ceci est particulièrement utile si vous avez une collection de fichiers journaux à surveiller ou plusieurs événements à déclencher.