Moin moin!
Ich brauche ein Script was mir bescheid sagt, wenn eine bestimmte Datei geändert wurde.
So eine ungefähre Idee hab ich schon:
Das Script wird per Crontab aufgerufen.
Dieses Script guckt auf den genaue Datum wann die Datei geändert wurde und speichert dies in einer Datei.
Beim nächsten Aufruf wird geguckt, ob das Datei in der Datei mit dem aktuellem Datei übereinstimmt, wenn dies nicht der Fall ist, dann wird die Zeile "echo "Datei wurde aktualisiert" |mail bla@hu" aufgerufen.
Kann mir jemand beim Realisieren helfen (oder gibt es vielleicht eine viel einfachere Lösung)?
Änderung von Datei überwachen
- mistersixt
- Beiträge: 6601
- Registriert: 24.09.2003 14:33:25
- Lizenz eigener Beiträge: GNU Free Documentation License
Vielleicht solltest Du Dir mal das Paket fam anschauen:
Gruss, mistersixt.
Code: Alles auswählen
This package provides a server that can monitor a given list of files
and notify applications through a socket. If the kernel supports dnotify
(kernels >= 2.4.x) FAM is notified directly by the kernel. Otherwise it has
to poll the files' status. FAM can also provide a RPC service for monitoring
remote files (such as on a mounted NFS filesystem).
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Da musst Du aber noch ein wenig programmieren, weil Du dann auch noch einen FAM Client brauchst... Ist aber (scheinbar...) nicht schwierig...
Patrick
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
Re: Änderung von Datei überwachen
Hi Du könntes ja auch folgendes ausprobieren:ruwen hat geschrieben:Moin moin!
Ich brauche ein Script was mir bescheid sagt, wenn eine bestimmte Datei geändert wurde.
So eine ungefähre Idee hab ich schon:
Das Script wird per Crontab aufgerufen.
Dieses Script guckt auf den genaue Datum wann die Datei geändert wurde und speichert dies in einer Datei.
Beim nächsten Aufruf wird geguckt, ob das Datei in der Datei mit dem aktuellem Datei übereinstimmt, wenn dies nicht der Fall ist, dann wird die Zeile "echo "Datei wurde aktualisiert" |mail bla@hu" aufgerufen.
Code: Alles auswählen
#!/bin/bash
if [ `find /home/eC/test.txt -mmin -60` ]
then
echo "modified"
echo "Datei wurde aktualisiert" | mailx -s test eC@home.net
else
echo "not modified"
fi
exit 0
Vielleicht klappts
gruss
eC