проверяю размер файла таким образом:
cam=path_to_file
s1=$(stat -c %s $cam)
for (( ;; ))
do
s2=$(stat -c %s $cam)
if [[ $s1 -ne $s2 ]]
then
notify-send -t 18000 -u critical "`date`" "размер изменился"
exit 0
fi
done
здесь stat -c %s filename выводит размер файла.
первый раз s1 — это исходный размер, потом s2 — это уже новый размер высчитывается в цикле.
и дальше сравниваем, выполняется условие и скрипт завершается.
а я хочу сделать так, чтобы он продолжался и чтобы s1 принял текущее значение и в цикле уже опять сравнивать с s2.
Добавлено….
короче надо что то типа goto, чтобы возвращаться в начало скрипта и по новой считать размер и отталикаваться от него.
но goto в bash нету.
наверное надо поместить это еще в один бесконечный цикл… и вместо exit 0 тогда возвращаться в начало.
я вроде понимаю, что нужно, но не могу никак написать.
помогите плз)
Добавлено….
richy 26.09.2009 15:51:23
> а ещё, может лучше проверять не размер файла, а контрольную сумму… md5, sha512
не хочется нагружать комп подсчетами
Добавлено….
richy 26.09.2009 15:46:14
класс, то что нужно.
что то я недокумекал до этого
спасибо!