zoukankan      html  css  js  c++  java
  • 整理文件比较的Shell脚本

    问题

    如何对不同环境生成的文件进行比较?

    方案

    通过对文件进行消息摘要计算,例如MD5,SHA-1,通过比较摘要来判断文件的一致性

    脚本

    md5sum例子,生成文件对应的md5码
    $ls *.jar
    weblogic.jar wlclient.jar
    $ md5sum *.jar >> mymd5result.txt
    $cat mymd5result.txt 
    c97f8d9aae6ed2c93b5bede83320944b weblogic.jar
    9cbc591f62173404c991d75b45f254b1 wlclient.jar
    

      


    比较文件md5码
    #!/bin/sh
    
    
    
    
    usage()
    {
            echo "usage:'test.sh file1 file2' compare file md5 code"
    }
    
    
    if [ $# -ne 2 ];
    then
       usage
       exit 1
    fi
    
    
    cat $1 | while read myline
    do
       e0=`echo $myline |awk '{print $1}'`
       e1=`echo $myline |awk '{print $2}'`
    
    
       count=`grep $e1 $2|wc -l`
    
    
       if [ $count -ne 1  ] ;
       then
            echo "$e1 more than one time in $2"
            exit 1
       fi
       
       te1=`grep $e1 $2|awk '{print $2}' `
       te0=`grep $e1 $2|awk '{print $1}' `
       if [ "$e1"x = "$te1"x ];
       then   
            if [ "$te0"x = "$e0"x ] ;  
            then
               echo "file:"$e1" equals!"
            else    
               echo "file:"$e1" not equals!"
            fi
            
       else
            echo "file:"$e1" is not exist in $2"
       fi
    done
    

      



  • 相关阅读:
    第一次作业
    java基础随笔09
    java基础随笔08
    java基础随笔07
    java基础随笔06
    java基础随笔05
    java基础随笔04
    java基础随笔03
    java基础随笔02
    java基础随笔01
  • 原文地址:https://www.cnblogs.com/yangjun1120/p/2727537.html
Copyright © 2011-2022 走看看