从两个最新版本的页面运行差异

时间:2015-11-11 17:23:40

标签: bash diff sdiff

我正在尝试设置一个bash脚本,每天下载一次网页,然后运行最后两页的差异,并在页面超过15%时发送警报。我真的不确定如何选择最近的两个页面。

脚本开始很简单,只需执行页面的wget并将日期插入文件名:

wget --output-document=index`date +%Y-%m-%d`.html https://www.example.com

假设已经收集了几个页面,我们运行两个最近页面的差异。 (这就是我失去的地方)

sdiff -B -b -s index1.html index2.html | wc -l

有关如何设置它的任何建议,以便它可以拉最后两个文件并运行差异?

1 个答案:

答案 0 :(得分:0)

当你做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/