Запуск diff из двух последних версий страницы
Я пытаюсь настроить bash-скрипт для загрузки веб-страницы один раз в день, затем запустить diff двух последних страниц и отправить предупреждение, если страницы отличаются более чем на 15%. Я не совсем уверен, как подходить к выбору двух самых последних страниц.
Сценарий запускается достаточно просто, просто сделав виджет страницы и вставив дату в имя файла:
wget --output-document=index`date +%Y-%m-%d`.html https://www.example.com
Предполагая, что пара этих страниц была собрана, мы запускаем различие двух последних страниц. (И это где я потерян)
sdiff -B -b -s index1.html index2.html | wc -l
Любые предложения о том, как настроить это так, чтобы он мог вытащить последние два файла и запустить diff?
1 ответ
Я бы сохранил дату как часть имени файла, когда вы делаете wget.
Для сравнения файлов я бы выбрал следующее решение.
YdayFile=index`date +%Y%m%d -d "1 day ago"`.html
TodaysFile=index`date +%Y%m%d`.html
wget --output-document=${TodaysFile} https://www.example.com
sdiff -B -b -s ${TodaysFile} ${YdayFile} | wc -l
Вы можете заменить "1 день назад" на любое количество дней, которое хотите вернуться. Было бы неплохо сделать проверку существования файла перед diff.
Проверьте эту ссылку для более операций даты. http://ss64.com/bash/date.html