Linux shell脚本实现jar包的共享

Nov 26, 2016 阅读(272)

#!/bin/bash
#-----------------------------------------------------------------------------
# 抽离tomcat服务器webapps目录项目中重复的jar到公共目录(tomcat主目录/lib/ext)中
#
# Author:       zll
# Time:         2016/11/24
#-----------------------------------------------------------------------------
log_file="./same_jar_mv2common.log"

echo "当前时间:$(date)"  >> $log_file
echo "当前路径:$(pwd)" >> $log_file

#计算文件MD5
find ./ -name *.jar  |  xargs  md5sum | sort > md5.tmp.txt


#计算出重复的行
# uniq -D -w 32 中的-D表示保留重复行数据,-w 32 表示根据前32个字符比较重复性
cat md5.tmp.txt | uniq -D -w 32 | sort > repeat.tmp.txt

#移动
while read line;
do
repeat_file_path=$(echo $line | cut -d ' ' -f 2);
mv $repeat_file_path ../lib/ext/
echo -e "移动重复文件 $repeat_file_path 到 ../lib/ext/ 目录中" >> $log_file
done < repeat.tmp.txt

echo -e "程序结束,当前时间:$(date) \n\n\n\n\n\n\n\n" >> $log_file