用shell监控站点目录下的文件是否被修改

#!/bin/bash
#check_file_md5 find /application/nginx/html/test1/ -type f | xargs md5sum > /tmp/web_md5_f.txt
#check_file_num tree -i /application/nginx/html/test1 | grep -v "^$" >> /tmp/web_md5_num.txt.default
MD5=`/usr/bin/md5sum -c /tmp/web_md5_f.txt | grep -v "OK" | wc -l`
TREE=`tree -i /application/nginx/html/test1 | grep -v "^$"> /tmp/web_md5_num.txt`
if [ "$MD5" -ne 0 ];then
        echo "At $(date +%F) /application/nginx/html/test1 has been changed!Please make sure!"
else
        echo "Everything is OK!"
fi
diff /tmp/web_md5_num.txt /tmp/web_md5_num.txt.default

成都创新互联成都网站建设按需设计网站,是成都网站推广公司,为集装箱提供网站建设服务,有成熟的网站定制合作流程,提供网站定制设计服务:原型图制作、网站创意设计、前端HTML5制作、后台程序开发等。成都网站设计热线:18982081108

实现的原理为

    1.监控文件的md5值前后是否一样,如果不一样md5sum对比时会报错

    2.通过tree命令输出到指定文件中,并用diff对比前后两的生成的内容是否一样,如果多出或者少的文件,会进行提示

知识点:

    md5sum -c:可以实现md5值的前后对比,如果对比失败,会提示FAILED

    tree -i:去掉树型结构,直接以列的形式显示

    


新闻名称:用shell监控站点目录下的文件是否被修改
文章起源:http://myzitong.com/article/gipeee.html