zoukankan      html  css  js  c++  java
  • shell习题第22题:

    【题目要求】

    加入A服务器可直接ssh到B,不用输入密码。A和B都有一个目录是/data/web/这下有很多文件,我们不知道这下面有多少层目录,但是之前的目录结构和文件是一模一样的。但是现在不确定是否一致。

    所以以A为标准,检测AB不同的文件,看看哪些文件是被修改过的

    【核心要点】

    md5sum file

    【脚本】

    #!/bin/bash
    
    dir=/data/web
    [ -f /tmp/md5.list ] && rm -f /tmp/md5.list
    
    while read line
    do
        md5sum $line >> /tmp/md5.list
    done < /tmp/md5.list
    
    # 拷贝到B服务器
    echo "scp /tmp/md5.list B:/tmp"
    
    # 嵌入文档 EOF
    [ -f /tmp/check_md5.sh ] && rm -f /tmp/check_md5.sh
    
    cat > /tmp/check_md5.sh << EOF
    #!/bin/bash
    dir=/data/web
    while read line 
    do
        file_name=`echo $line | awk '{print $2}'`
        md5=`echo $line | awk '{print $1}`
        if [ -f $file_name ]; then
            md5_b=`md5sum $file_name`
            if [ $md5_b != $md5_b ]; then
                echo "$file_name changed."
            fi
        else
            echo "$file_name lose."
        fi
    done < /tmp/md5.list
    EOF
    
    echo "scp /tmp/check_md5.sh B:/tmp/"
    echo 'ssh B "/bin/bash /tmp/check_md5.sh"'
  • 相关阅读:
    同志们的毒害1_xuhang01
    2019佳木斯集训 Day8
    2019佳木斯集训 Day7
    2019佳木斯集训 Day6
    2019佳木斯集训 Day5
    数据结构——关于倍增LCA那点事
    2019佳木斯集训 Day3
    2019佳木斯集训 Day4
    centos7安装python2 sybase相关依赖
    mac与centos终端快捷指令
  • 原文地址:https://www.cnblogs.com/dingzp/p/10991551.html
Copyright © 2011-2022 走看看