Linux за българи: Форуми

Програмиране => Общ форум => Темата е започната от: mishot в Mar 04, 2008, 12:57



Титла: Bash script за следене съдържанието на директория
Публикувано от: mishot в Mar 04, 2008, 12:57
нужен ми е скрипт, който да следи за промяна съдържанието на директория. Повечето пъти директорията е празна, но може да се наложи да следи за нови файлове(ако не е била празна), след което да праща мейл за съществуващата промяна(не е важно съдържанието на директорията, бр. файлове и т.н., а само известие, че е настъпила промяна; със свободен текст)

на отзовалите се Благодаря предварително!


Титла: Bash script за следене съдържанието на директория
Публикувано от: radoulov в Mar 04, 2008, 13:43
Примерен код
#! /usr/bin/env bash

(($#!=2))&&{ printf "Usage: $0 <dir> <email>\n"; exit 1;}

oldstat="/tmp/_old.stat"

[ -f "$oldstat" ]||>"$oldstat"

[ "$(stat --printf "%y" "$1")" = "$(<"$oldstat")" ]||echo|mailx -s "modified" "$2"

printf "%s" "$(stat --printf "%y" "$1")">"$oldstat"

exit


Кодът не контролира за промени в subdirectories!





Титла: Bash script за следене съдържанието на директория
Публикувано от: VladSun в Mar 04, 2008, 13:55
http://www.linux-bg.org/cgi-bin....8126063

:)

Ползвам го за следене на httpd.conf и т.н. от няколко месеца - нямам проблеми.





Титла: Bash script за следене съдържанието на директория
Публикувано от: gat3way в Mar 04, 2008, 14:06
Би трябвало и промени из поддиректориите да лови. Обаче не е смятано да вади кой точно файл от директорията е променен или нов. Евентуално може при inotify event-a да се прави нещо като find /dir -mtime bla | mail blabla.

Хубавото е че не се налага да се правят цикли с проверка или да се слагат cronjobs и тем подобни работи. Освен което механизмът е такъв, че използването на процесорни и i/o ресурси е минимално.


Титла: Bash script за следене съдържанието на директория
Публикувано от: mishot в Mar 04, 2008, 14:15
благодарско на всички за бързата реакция


Титла: Bash script за следене съдържанието на директория
Публикувано от: Nikolavp в Mar 04, 2008, 14:58
Цитат (VladSun @ Март 04 2008,14:55)
http://www.linux-bg.org/cgi-bin....8126063

:)

Ползвам го за следене на httpd.conf и т.н. от няколко месеца - нямам проблеми.

//offtopic
omg тръгнах да убивам гадната мушичка  :crazy:  :D  :D  :D


Титла: Bash script за следене съдържанието на директория
Публикувано от: jet в Mar 04, 2008, 18:57
Цитат (VladSun @ Март 04 2008,14:55)
Ползвам го за следене на httpd.conf и т.н. от няколко месеца - нямам проблеми.

това срещу кракери ли?


Титла: Bash script за следене съдържанието на директория
Публикувано от: gat3way в Mar 04, 2008, 19:18
А, не :)

Като внесеш промяна в httpd.conf, apache автоматично се рестартира. Спестява писане :)


Титла: Bash script за следене съдържанието на директория
Публикувано от: VladSun в Mar 04, 2008, 19:45
Цитат (Nikolavp @ Март 04 2008,14:58)
//offtopic
omg тръгнах да убивам гадната мушичка  :crazy:  :D  :D  :D

Хахахаха :)
И аз бях така - за това ми хареса :)





Титла: Bash script за следене съдържанието на директория
Публикувано от: maniac в Mar 05, 2008, 00:38
Ето и една  алтернатива от мен:
Incron homepage
Incron кратко howto
Пробвано, работи  :D