Написание простого bash-скрипта для проверки утром: одна часть - это сносить некоторые html-файлы и проверять их существование.Другая часть - обеспечение наличия некоторых локальных файлов и отправка по электронной почте, если их нет.Проблема, с которой я сталкиваюсь, заключается в том, что я получаю «синтаксическую ошибку: неожиданный конец файла», и я не могу понять, почему это происходит.Вот упрощенная версия кода:
for myHost in $HOSTS
do
result=$(wget -T $TIMEOUT -t 1 $myHost -O /dev/null -o /dev/stdout)
result2=$(echo $result | grep "awaiting response")
connected=$(echo $result | grep "404");
if [ "$connected" != "" ]; then
for myEMAIL in $EMAIL
do
echo -e "$(date) - $myHost is down! \n This is an automated message." | mailx -r "box.email.com" -s "$SUBJECT" $myEMAIL
done
fi
done
numoffiles=`find . -maxdepth 1 -mtime -1 | grep -i .html | wc -l`
if [ "$numoffiles" -ne 5 ]; then
FILE=$(find . -maxdepth 1 -mtime -1 -print| grep -i .html)
mailx -r "box.email.com" -s "FILE MISSIN" "$EMAIL" << EOF
EOF
fi
при использовании sh -x я вижу, что доходит до назначения количества отчетов для переменной "numoffiles", но тогда он просто считает, что этоконец файла.У кого-нибудь есть предложения?