träff i syslog -> exekvera script

Permalänk
Medlem

träff i syslog -> exekvera script

Behöver ett script exempel (tex perl) som triggar om den får en träff i syslogen( om en fördefinierad sträng dyker upp i syslogen ). Jag vill alltså att detta script ska exekvera ett annat script så fort det blir en träff i sysloggen.

Permalänk
Medlem

#!/bin/sh while :;do tail -f /var/log/filnamn | (grep -m 1 -q "uttryck" && /usr/local/bin/skript.sh) done

typ nånting sånt borde fungera..

Permalänk
Medlem

du kan ju annars göra en liten if loop som du lägger i din crontab

#!/bin/sh

expression=uttryck
file=filnamn
if grep $uttryck $filnamn
dosomestuff
end

Visa signatur
Permalänk
Hedersmedlem

Om du kan tänka dig att byta logdaemon så kan metalog göra detta utan externa prylar:
http://metalog.sourceforge.net/README (se "command")

Visa signatur

Asus ROG STRIX B550-F / Ryzen 5800X3D / 48 GB 3200 MHz CL14 / Asus TUF 3080 OC / WD SN850 1 TB, Kingston NV1 2 TB + NAS / Corsair RM650x V3 / Acer XB271HU (1440p165) / LG C1 55"
Mobil: Moto G200