linux下如何批量比对两个文件的MD5值是否一致,SHA1是否一致。

2014-09-23 08:40:00
admin
原创 2815
摘要:linux下如何批量比对两个文件的MD5值是否一致,SHA1是否一致。

linux下如何批量比对两个文件的MD5值是否一致,SHA1是否一致。如下所示:

#!/bin/bash
SOURCE_DIR="/home/walkerjava/source/"
TARGET_DIR="/home/walkerjava/target/"

cd $SOURCE_DIR
for file in $(ls $SOURCE_DIR)
do
	source_file=${SOURCE_DIR}${file}
	target_file=${TARGET_DIR}${file}
	if [ ! -e $target_file ]; then
	     echo -e ${file}"\033[31m不存在,请检查服务器上目录\033[0m"
	     continue
	fi
	
	if [ ! -f $source_file ]; then
	     echo -e ${file}"\033[31m不是文件,跳过\033[0m"
	     continue
	fi
	source_md5=`md5sum ${source_file} | awk '{ print $1 }'`
	target_md5=`md5sum ${target_file} | awk '{ print $1 }'`
	if [ ! ${source_md5} == ${target_md5} ]; then
	    echo -e "\033[31m"${file}"MD5校验失败\033[0m"
	fi

	source_sha1=`sha1sum ${source_file} | awk '{ print $1 }'`
	target_sha1=`sha1sum ${target_file} | awk '{ print $1 }'`
	if [ ! ${source_sha1} == ${target_sha1} ]; then
	    echo -e "\033[31m"${file}"SHA1校验失败\033[0m"
	fi
done
博客分类
© 2012-2021    豫ICP备12018026号-1 SQL查询:5
内存占用:7.00MB
PHP 执行时间:0.06