#!/bin/bash # set charset to avoid problems export LANG=en_US.UTF-8 export LANGUAGE=en_US:en export LC_CTYPE=en_US.UTF-8 # config base_india_dir=/home/dp/all_india base_dir=/home/dp #sum_dir=$base_dir/_md5_check/sums #log_dir=$base_dir/_md5_check/$(date +%Y%m%d) sum_dir=$base_india_dir/_md5_check/sums log_dir=$base_india_dir/_md5_check/$(date +%Y%m%d) # functions function check_md5 { # set charset to avoid problems export LANG=en_US.UTF-8 export LANGUAGE=en_US:en export LC_CTYPE=en_US.UTF-8 my_stdout=$log_dir/${1:0: -4}_stdout.txt my_stderr=$log_dir/${1:0: -4}_stderr.txt my_time=$log_dir/${1:0: -4}_time.txt my_analyse=$log_dir/${1:0: -4}_analysis.txt cd $base_dir (time md5sum -c $sum_dir/${1} > $my_stdout 2> $my_stderr) 2> $my_time grep -v OK $my_stdout > $my_analyse } function create_md5 { my_stdout=$sum_dir/${1}.md5 my_stderr=$log_dir/${1}_stderr.txt my_time=$log_dir/${1}_time.txt touch $my_stdout (time find ${1} -type f -exec md5sum -b {} \; > $my_stdout 2> $my_stderr) 2> $my_time } # main program mkdir -p $log_dir #cd $sum_dir cd $base_dir #for i in hdd2[1-6]; do # create_md5 $i & #done # #wait #for i in hdd2[7-9] hdd3[0-2]; do for i in hdd29 hdd3[0-2]; do create_md5 $i & done