tak na szybko i bez testów script sprawdzający czy zawartość katalogu uległa zmianie:
#!/bin/sh
tested_dir=/sciezka/katalog
mk_md5sum() {
ls $tested_dir > /tmp/tested_dir_list
md5sum /tmp/tested_dir_list | cut -f1 -d ' ' > /tmp/md5_file
rm -f /tmp/tested_dir_list
}
if [ ! -f /tmp/md5_file ]; then
mk_md5sum
else
ls $tested_dir > /tmp/tested_dir_list.tmp
md5sum /tmp/tested_dir_list.tmp | cut -f1 -d ' ' > /tmp/md5_file.tmp
rm -f /tmp/tested_dir_list.tmp
diff /tmp/md5_file /tmp/md5_file.tmp >/dev/null
if [ $? != 0 ]; then
echo "Zawartość katalogu $tested_dir została zmieniona" | mail-s "Zmiana zawartości katalogu" adres@domena.com
mv -f /tmp/md5_file.tmp /tmp/md5_file
fi
fi
cały script działa, nietetsowane jedynie wysyłanie maila. Będziesz miał pracę domową...
Oczywiście w zmiennej tested_dir musisz wstawić własny katalog. Acha, script używa narzędzi z pakietu diffutils - musisz mieć zainstalowany ten pakiet.
Cały problem można rozwiązać również na wiele innych sposobów...