千家信息网

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

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,#!/bin/bash#check_file_md5 find /application/nginx/html/test1/ -type f | xargs md5sum > /tmp/web_md5
千家信息网最后更新 2024年11月23日用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.defaultMD5=`/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!"fidiff /tmp/web_md5_num.txt /tmp/web_md5_num.txt.default


实现的原理为

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

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


知识点:

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

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


0