URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9521
[ Назад ]

Исходное сообщение
"Проверка времени модификации файла"

Отправлено ck80 , 11-Авг-12 10:55 
Помогите, создать шел скрипт для следующий нужд:

На ftp лежат файлы. В начале каждого часа (в 00 минут) они перезаписываются новыми файлами, каждый из своего источника. Нужно контролировать, все ли файлы из всех ли источников перезаписались вовремя. Сейчас я каждый час захожу на фтп и проверяю, все ли файлы на месте. А хочется скриптом, если файла вовремя нет - бить тревогу.

Вот этот скрипт работает, но он не показывает имя файла:

!/bin/bash
if [[ $(find /home/ftp/*1.zip -mmin +20) ]]; then
   mail -s "ALARM" root
fi

Подскажите, что добавить в скрипт, чтобы он ещё и имя файла показывал, который не перезаписался?


Содержание

Сообщения в этом обсуждении
"Проверка времени модификации файла"
Отправлено Etch , 11-Авг-12 21:33 
> Подскажите, что добавить в скрипт, чтобы он ещё и имя файла показывал,
> который не перезаписался?

files=$(find /home/ftp -name "*1.zip" -mmin +20); if [[ $files ]]; then echo $files; fi

Дальше - сам.


"Проверка времени модификации файла"
Отправлено ck80 , 13-Авг-12 12:25 
>> Подскажите, что добавить в скрипт, чтобы он ещё и имя файла показывал,
>> который не перезаписался?
> files=$(find /home/ftp -name "*1.zip" -mmin +20); if [[ $files ]]; then echo
> $files; fi
> Дальше - сам.

Спасибо, помогли:

#!/bin/bash
find /home/ftp/ -type f -name "*1.zip" -mmin +20 | while read filename
do
   echo "ALARM! ${filename}" |mail -s "ALARM! ${filename}" root
done