My Advanced Linux/Bash shell scripts

backup 체크 후 메일 발송 스크립트

우주곰 2009. 7. 28. 09:45
참 조잡하다 = ㅂ=)a
그래도 유용하게 잘 돌아간다~

#!/bin/bash
# scripts by uzoogom

export LANG_ALL=ko_KR.eucKR
day=$(date +%Y-%m-%d)
backuplist=$(cd /backup/ && ls -d *)
list="$day"backup_check.txt

echo "$day backup status" > $list
echo " " >> $list
echo "Success list--------------------------------" >> $list

echo " " > bad.txt
echo "Fail list--------------------------------" >> bad.txt

for checkname in $backuplist
do
        check=$(find /backup/$checkname -type f -name "backupTime($day).txt" | wc -l )

        if [ $check == 1 ]
        then
                echo "$checkname backup is successfully Done!" >> $list
        else
                echo "$checkname backup is Fail. plz check your system." >> bad.txt
        fi

done
cat bad.txt >> $list
success=$(grep "successfully" $list | wc -l)
nonsuccess=$(grep "Fail" $list | wc -l)
sed "1a Success  :"$success"\nFailure:"$nonsuccess"" $list > last.txt
cat last.txt > $list
cat $list | mail -s ""$day" real server backup status" uzoogom@dunet.co.kr serverbin@dunet.co.kr
mv $list /root/SH/checklog
rm -f /root/backup/*.txt