概述: 最近有个新需求,将指定目录中的文件全部生成一个同名的.md5文件,内容是该文件的md5值。例如:/opt/001/ 目录下有个123.txt , 那么将在/opt/001/目录下生成一个123.md5文件,该内容是123.txt的md5值, 当然,指定目录中可能存在多级目录,应急使用,看看下面的脚本。
#!/bin/bash
_tmpdir=/tmp
_tmpfilelist=$_tmpdir/filelist.txt
_tmpdirlist=$_tmpdir/dirlist.txt
if [ ! -d $_tmpdir ]; then
mkdir -p $_tmpdir
fifind $1 -type f | grep .md5 | xargs rm -rf
find $1 -type f >$_tmpfilelist
cat filelist.txt | while read line
do
md5filename=$(basename $line)
md5dirname=$(dirname $line)
md5sum $line | awk '{print $1}' > $md5dirname/$md5filename.md5
done

