| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #!/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_dir=/home/dp/all_dirs
- sum_dir=$base_dir/_md5_check/sums
- log_dir=$base_dir/_md5_check/$(date +%Y%m%d)
- # functions
- function check_md5 {
- 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
- }
- # main program
- mkdir $log_dir
- cd $sum_dir
- for i in a0[1-6]*.md5; do
- check_md5 $i &
- done
- wait
- for i in a0[7-9]*.md5 a1[0-2]*.md5; do
- check_md5 $i &
- done
- wait
- for i in a1[3-7]*.md5; do
- check_md5 $i &
- done
|